git diff other_branch
に違いがあり、git merge other_branch
が何もしていないと困ります。その "欠落した"コードをmy_branch
に組み込む正しい方法は何ですか?`git diff`が変更を示すときにブランチをマージする正しい方法は何ですか?` git merge`は何もしません。
このSO answerは、私と同様の状況を示しています。もちろん
o---A---B---C-------G my_branch
\ \ /
--*D*---E---F other_branch
驚くべきことにDに変更し、私は
git checkout my_branch
git merge other_branch
を行うときに、自動的ににFに持参するmy_branch
にマージされていませんがGは
私がすることができますmanually create a patchとmy_branch
に適用します。
git diff other_branch my_branch > patchfile
git checkout my_branch
git patch -p1 < patchfile
しかし、私はgitログを掘り下げずに、このようにしたいと思います。パッチアプローチでは、Dの変更を記録し、最新のパッチはお互いに独立して起こります(コードの乱れ)。私はgit log
を簡素化し、他人がgit merge my_branch
を実行したときに意図せぬことが起こっていないことを確認したい(静かで狡猾に)。
あなたは 'other_branch'に' my_branch'をマージしようとしましたか?おそらくその違いを解決する可能性があります。いくつかのコミットが 'my_branch'では復帰したが' other_branch'では復帰しなかった場合、あなたはこのような状況になります。 – iltempo
@iltempo、私はあなたのコメントの後にマージを試みました、そして確かにそれは実際に違いを解決し、git diffは現在きれいです。私はそれが適切にマージされたことを信じなければならない。 – hobs
@iltempo、私は意図的に 'my_branch'の変更を元に戻したわけではありませんが、チェックアウトと編集とチェックの間を振動した後に昇華(テキストエディタ)で保存を押すとコミットが散在します。私はすべてのことにもっと注意する必要があります。 – hobs