好的,我们有一个包含3个子模块的存储库。现在,我们希望将此子模块合并回主存储库,保留所有历史记录(好吧,事实证明,使用子模块比有用的更麻烦)。我们该如何进行?
假设您拥有以下文件系统(并且假设您只有一个子模块,简单来说就是答案)
myRepoRoot/
myMainFiles/
submodule/
你只需要做
#Preparing the filesystems
cd submomdule
mkdir submodule
git mv file1 file2 dir1 dir2 submodule
git commit -am "Moved file"
#Actually merging
cd myRepoRoot
git remote add sub url_to_submodule
git fetch sub
git merge sub/master
用语言解释一下:您有几棵没有共同提交的树,只需要合并这些树即可。那就是第二部分正在做的事情。
仅需要第一部分来确保子模块的文件系统将是您所期望的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句