1. ホーム
  2. git

[解決済み] git rerereを有効にすることのデメリットはありますか?

2022-09-05 12:15:43

質問

私は、git の rerere 機能に関して様々なことを読み、それを有効にすることを検討しています。

git rerere の機能は、ちょっと隠れた機能です。名前の由来は "記録された解像度の再利用" で、その名の通り、ハンクの衝突をどのように解決したかをGitに記憶してもらい、次に同じ衝突を見たときにGitが自動的に解決してくれるようにするものです。

https://git-scm.com/book/en/v2/Git-Tools-Rerere

を使用する際に発生しうる問題について言及している人を見たことがありません。 rerere .

私は、欠点があると仮定しなければなりません、さもなければ、おそらくデフォルトで有効になっているはずです。では、rerere を有効にすると何か不都合なことがあるのでしょうか? そうでなければ発生しないような潜在的な問題は何でしょうか?

どのように解決するのですか?

間違ったマージを行い、それを破棄して、再度同じマージを行うと、再び間違ったマージが行われます。しかし、記録された解決策を忘れることができます。以下から ドキュメント :

git rerere forget <pathspec>

これは、rerere が現在の競合に対して記録した競合の解決策を <pathspec> .

特定のパスで使用するように注意してください。記録した解像度をすべてあちこちで吹き飛ばしたくはないでしょう。( forget を引数無しで使うと、これまで 非推奨 と入力しない限りは、このようなことをする必要はありません。 git rerere forget . を入力して明示的に要求しない限り、これをしなくて済むようにするためです)。

しかし、もしそうしようと思わなければ、簡単にその間違ったマージを履歴に入れてしまうことになります...。