0

Mercurial でマージを許可する前にいくつかのチェックを行う方法はありますか?

更新前のフックを見つけ、更新が許可される前に実行されるスクリプトを持っています~/.hg/hgrc

[hooks]
pre-update = ~/hg_pre_update.sh

しかし、マージを許可する前にチェックを実行したいのですが、現在、チェックを実行せずにマージを許可しています。

バックグラウンド

問題を解決する別の方法がある場合...

Mercurial で「失われた」編集に関する多くの問題が発生しています。私は今、それらのほとんどを同じ根本的な原因に突き止めました: 誰かが vim 編集セッションを開いている間に、彼らまたは他の誰かが hg の更新またはマージを行っています。エディターはファイルが外部で変更されたことを警告しますが、ユーザーは警告を無視して変更を保存します。

これらの変更がコミットされたとき、Mercurial には何も論争の余地はありません。ユーザーは、最後の更新で取り込まれたすべての変更を元に戻し、独自の変更を加えただけです。

しばらくして、コードがウォークアバウトになったことに気付きました。さまざまな侮辱が水銀の道に投げ込まれたキュー...

4

2 に答える 2

1

とまったく同じように機能するpre-mergeフックがあることがわかりましpre-updateた。質問する前に試してみましたが、hgrc を見ただけで、~/hg_pre_merge.sh存在しないフックに対して呼び出されているスクリプトを配置していることに気付きました。

どこにも文書化されたプレマージの存在を見つけることができませんが、今でも少しマペットのように感じています.

ちょっとマペットになった気分。

于 2012-10-19T08:03:03.500 に答える
1

ローカルの変更が行われていない場合、変更を自動リロードするように vim を設定します。(それ以外の場合は、尋ねるか、マージを強制します)

それが、どのエディターでもそのような問題を回避する方法です...

于 2012-10-18T16:23:31.397 に答える