是的我知道我想要的东西(git cp a b)大约等于
cp -R a b
git add b
但是,这会添加存储库中不存在的文件。我得到的最接近的是
cd a
git ls-files > ../files.txt
cd ../b
cat ../files.txt | xargs git add
几乎可以正常工作,但名称中包含空格的文件存在问题。我使用Cygwin的价值
答案 0 :(得分:2)
您需要将文件列表与文件名中不存在的字符(即空字符)分开。尝试:
(cd a && git ls-files -z) | (cd b && xargs -0 git add)
答案 1 :(得分:0)
0结合我的尝试和@ Philipp的回答
cp -R a b
cd a
git ls-files -z > ../files.txt
cd ../b
cat ../files.txt | xargs -0 git add