5

私は、Linuxカーネルを、古いバージョンから離陸して少し変更したブランチに徐々にマージするスクリプトに取り組んでいます。

その結果、スクリプトに多くのgit merge <sha> -m "merge without conflict"コマンドが含まれています。競合が発生した場合、スクリプトは停止し、ユーザーは適切なメッセージを使用してマージを解決してコミットします。

ただし、git merge -m "message" ...それでもエディタが表示され、メッセージを確認する必要があります。どうすればこれを防ぐことができますか?

一般的に、説明のないマージメッセージを表示するのは良い考えではありませんが、これは競合を生成せず、おそらく何百回も発生する可能性があるため、毎回ユーザー(自分)に確認を求めることはできません。質問。

編集:これは常にそうであるとは限りません。ただし、これにより問題が再現される可能性があります。

# Clone Linux's repository

$ git checkout v2.6.38
$ git checkout -b test

$ touch new_file
$ git add new_file
$ git commit

$ git merge v2.6.39 -m "merge message"
# brings up the editor, even though there are no conflicts
4

1 に答える 1

11

おそらく--no-edit旗?そのドキュメントには、--no-edit「注釈付きタグをマージするときに、このオプションを使用して自動生成されたメッセージを受け入れることができます(これは通常は推奨されません)...」と記載されています。

于 2012-12-16T02:12:04.970 に答える