我的情况如下:
我有一个git Repo A,其中包含一个文件夹,引用存储在git Repo B中的另一个“项目”中的文件。该文件夹实际上只是一个符号链接,因此它实际上并不存在。
我想做的是将来自Repo B的'git pull'打开到此文件夹中然后再回到Repo A中尽可能多地保留历史记录(如果需要改变其他方式)。
我可以手动上传所有文件,但这会丢失所有历史记录。此外,我可以只有2个单独的回购和链接,但我想尽可能尝试将项目B合并到项目A中。
git是否有某些内容......
git remote add projectb GITURLFORB
mkdir projectb
git add projectb && git commit projectb
git push origin master
git pull projectb master --into_folder projectb
git push origin master
谢谢
答案 0 :(得分:2)
听起来您希望使用submodules
来加入projectB
。见http://book.git-scm.com/5_submodules.html
子模块的最大优点是projectA
将指向projectB
中的特定提交,即使在projectB
中进行了新的提交。这允许projectB
进化,而不必担心违反projectA
。如果projectB
中的新提交适用于projectA
,则可以更新projectA
中的指针。