2012-03-10 9 views
13

マージ競合に使用できるgitフックはありますか? git mergeが失敗した後は、コンフリクトのあるすべてのファイルを開くスクリプトを$EDITORに書き込むことができれば幸いです。残念ながら、post-mergeフックは競合があり、githooksのマニュアルページに表示されているものから実行されませんが、それ以外のフックはありません。マージ競合のGitフック

私が何かを見逃してしまったのか、それとも関数のような別名「git merge」が不足しているのか不思議です。チャールズ・ベイリーによって示唆されるように

for i in $(git ls-files -u | cut -f 2 | sort -u); do $EDITOR $i; done 
+0

真の3ウェイmergetoolではなく、単にエディタであるカスタムmergetoolを使用して、競合が発生したときに 'git mergetool'を実行することができます。 –

+0

良い提案。私はこれを考慮しませんでした。なぜなら、私は本当にマージツールを気に入らず、自分のコンフリクトをエディタで直接修正することができたからです。私は可能な解決策として[this](http://stackoverflow.com/questions/1817370/using-ediff-as-git-mergetool)を見つけました。私は[mer​​getool](http://schacon.github.com)をカスタマイズすると思います/git/git-mergetool.html)は確かに行く方法です。質問は今、私の質問とは何ですか?ページの下部にある「あなたの質問に答える」をクリックするか、何もしないでください。 – flooose

答えて

0

を:あなたはflooseで述べたように

おかげで、 クリス

0

は、私はあなたのmergetoolを編集できたり、おそらくあなたが使用して別のエイリアスを作成することができ、そこに多分二つの方法を考えますこれを行う最善の方法は、mergetoolをカスタマイズすることです。 this guideを使用して、私は私のエディタで開か競合をマージするには、この簡単な方法を思いついた:

[merge] 
    tool = emacs 
[mergetool "emacs"] 
    cmd = $editor \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\" 

チャールズ・ベイリーは、私はこれのために彼に信用を与える必要がありますどのように答えたことがないので、私はこれが最終的に近くに適切な方法であると思いますこの質問。

関連する問題