2

リベースして競合が発生すると、競合したファイルは次のようになります。

<<<<<<< c50c817dad7008a3760241084de2b83fd4f84288
it was on master 456
=======
it was on master 123
>>>>>>> branch - set up README conflict

他の人がそれほど素晴らしいコミット メッセージを作成しない場合があるため、次のような結果になる可能性があります。

<<<<<<< c50c817dad7008a3760241084de2b83fd4f84288
it was on master 456
=======
it was on master 123
>>>>>>> fixed stuff

これの問題は、複数の「修正済み」コミットがある場合、正確なコミットを見つけるのに苦労することです。コミット メッセージの代わりに常に SHA ハッシュを使用するように git を設定する方法はありますか?

4

1 に答える 1

0

残念だけど違う。

ええと、その一方で: はい、一種: 切り離された HEAD を使用し、手動でコミットをチェリー ピックして ID を使用し、git が代用できる名前を持たないようにします。ただし、これはリベースの目的の多くを無効にします(リベースはチェリーピッキングを自動化し、最後にブランチ名の更新を行います)。

ただし、2 つの理由から、これを行う必要はありません。あなたが制御できないのは、人々がくだらないコミット メッセージを使用してはならないということです。:-)使用できるのは、リベースが競合で停止したときに、競合する 2 つのコミットの SHA-1 を特定することですHEADCHERRY_PICK_HEAD詳細については、git cherry-pickドキュメントを参照してください。

(基本バージョンを表示できる に設定merge.conflictstyleすることもお勧めdiff3します。リベース/チェリーピックには完全なマージほど必要ではありませんが、気に入っています。)

于 2016-03-29T20:22:22.050 に答える