2017-06-22 7 views
1

私はいくつかの似たようなトピックを見つけましたが、私の解決策を見てください。それはgitのサブツリーのように少し異なる問題を解決するために意図されています。私は2つのリポジトリAとBを持っています。Repo Bには、repo Aの内容と無関係なディレクトリが1つしかありません。私はrepo Aにそのディレクトリを追加し、repoAに一貫した履歴を持たせたいだけです。 Repo Bはもう使用されません。ここで2つのgitリポジトリをマージする - 一貫性のある履歴

は、手順は次のとおりです。

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

gitのプルは、マージを行ってますが、私が使用する必要がありますフェッチし、その後、いくつかのオプションパラメータと合併しますか?

他にもいくつか提案がありますか?

+0

可能な複製を実行することにより、/questions/13040958/merge-two-git-repositories-without-breaking-file-history) –

+0

「一貫性のある履歴」とはどういう意味ですか? AとBの両方の変更履歴を保存する必要がありますか?この変更がBに変更される前に、この変更がAに加えられたことを履歴に正確に反映させる必要がありますか? –

答えて

1

あなたはRepoAの岩下RepoBをリベースしようとすることができます:

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

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

[ファイル履歴を壊すことなく、2つのGitリポジトリをマージ](https://stackoverflow.comの

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 
関連する問題