【发布时间】:2018-02-17 20:52:15
【问题描述】:
我有目录 A 与目录 B 匹配的文件。目录 A 可能有其他需要的文件。目录 B 是一个 git repo。
我想将目录 B 克隆到目录 A 但 git-clone 不允许我这样做,因为该目录非空。
我希望它只是克隆 .git,因为所有文件都匹配,我可以从那里去?
我无法克隆到空目录,因为我在目录 A 中有文件不在目录 B 中,我想保留它们。
复制 .git 不是一个选项,因为我希望 refs 可以推/拉,而且我不想手动设置它们。
有什么办法吗?
更新:我认为这可行,任何人都可以看到任何问题吗? -->
cd a
git clone --no-hardlinks --no-checkout ../b a.tmp
mv a.tmp/.git .
rm -rf a.tmp
git unstage # apparently git thinks all the files are deleted if you don't do this
【问题讨论】:
-
只是想知道如果省略“--no-checkout”会发生什么,除了临时克隆会消耗更多的磁盘空间和时间。 'git unstage' 或其他东西仍然是必要的吗?
-
可能是git-force-clone?
标签: git