1

gitを使用しているプロジェクトがあります。リポジトリを受け取ったとき、コミットされていない変更がいくつかありました。私はそれらをコミットし、自分で作り始めました。

私は別の開発者から作業を受け取り、その開発者は変更と元のコミットされていない変更の両方を1つのコミットにコミットしました。

これで、別々のフォルダーに2つのgitリポジトリがあり、競合をできるだけ少なくして、変更を開発者の変更にマージする方法を知りたいと思います。

4

1 に答える 1

3

あなたが現在あなたのチップをチェックアウトしていて、それがそうであると仮定するとmaster、1つのオプションは次のようになります:

1。リポジトリから彼らを指すリモートを追加します。

2.彼の変更をフェッチします
git fetch hisRemote

。2。次に、行った変更のみを使用して新しいブランチを作成します。これは、元の変更をコミットした場所から分岐します。
git branch myChanges

3.ブランチをリセットしてmaster、元の変更をコミットしたコミットに戻します
git checkout master
git reset --hard <commitOriginalChangesAreIn>

。4.次に、彼のブランチを彼の変更とマージし、元の変更をそのブランチにマージします。
git merge hisRemoteBranch

5.最後に、そのブランチチップを変更を加えたブランチにマージします。
git merge myChanges

于 2012-04-06T18:37:29.950 に答える