2017-06-22 113 views
1

我发现了一些类似的主题,但请看看我的解决方案。它看起来像git子树旨在解决一个稍微不同的问题。我有两个存储库A和B. Repo B只有一个与repo A内容无关的目录。我只想将该目录添加到repo A中,并且在repoA中有一个一致的历史记录。回购B将不再使用。合并两个git存储库 - 一致的历史

通过以下步骤:

cd RepoB 
git checkout develop 
git remote set-url origin RepoA 
git pull origin develop 
git push -u origin develop 

git的拉动将进行合并,我应该用取,然后用一些选项参数合并吗?

你有其他建议吗?

+0

的[合并两个Git仓库不破坏文件历史]可能的复制(https://stackoverflow.com/questions/13040958/merge-two-git-repositories-without-breaking-file-history) –

+0

这里“一致的历史”是什么意思?你需要保存A和B的变化历史吗?历史是否必须准确地反映在对B进行这种改变之前对A进行了这种改变,但是在对A进行其他改变之前对B进行了这种改变? –

回答

1

你可以试着变基RepoB ontop的RepoA的:

运行
repoA/master: A--B--C--D 
repoB/master: X--Y--Z 

Result: A--B--C--D--X--Y--Z 

cd repoA 
git remote add repoB [email protected]:repoB 
git fetch repoB 
git checkout repoB/master # replace branch name if needed 
git rebase master # replace branch name if needed 
相关问题