Gitは

2012-05-03 12 views
3

私の状況は以下のとおりです。特定のディレクトリに引っ張ります実際には存在しません。Gitは

私がしたいのは、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 

線に沿って何かを持っていますが、あなたがprojectBを含めるようにsubmodulesを使用したいようですねあなた

答えて

2

ありがとうございます。サブモジュールの最大の利点は、projectAが新たなコミットがprojectBで行われている場合でも、projectBで特定のコミットを指しているということですhttp://book.git-scm.com/5_submodules.html

を参照してください。これにより、projectBは、projectAの破損を心配することなく進化させることができます。 projectBの新しいコミットがprojectAで機能する場合は、ポインタをprojectAに更新できます。

+0

お返事ありがとうございます、それは私が望んでいるようです! プロジェクトAは常にプロジェクトBの特定の部分を参照し、後で別々に進化して「再マージ」することができます。 優秀 –