1

このリクエストのタイトルがすべてを物語っています。.hgrc ファイルにフックが定義されていませんが、hg commit の実行時に次のロールバック メッセージが表示されます。

transaction abort!
rollback completed
abort: pretxncommit.whitespace hook exited with status 1

私の hgrc ファイルは次のようになります。

[paths]
default = 'the_address'

[ui]
username = 'my name and email address'
verbose = True

[extensions]
mq =

[diff]
git = 1
unified = 8

念のため大事に。私は Ubuntu 12.04 で Mercurial を使用しており、/opt/ ディレクトリでXAMPP インストール ( Apache friends ) を使用して組み合わせようとしているため、コミットする前に常に sudo を実行する必要があります。

SO を調べて Web で検索したところ、このエラーはコード内の末尾の空白に関するフックによるものであることがわかりました ( Mercurial のこの部分を比較してください: The definitive guide、フックに関するこの SO エントリも参照してください)。奇妙なことに、私はこのフックをどこにも定義していないので、それを削除する方法もわかりません。

これを整理するための助けをいただければ幸いです。みんなありがとう。

================================================== ==========================

編集:スムーズなレゲエが提案したものを取り入れて、hgrc ファイルをホーム フォルダーとルート フォルダーに置き、hgrc ファイルを etc/mercurial に調整して、この問題の対処法を調べました。

debug = True がどれだけ多くの情報を提供するかはわかりませんが、特に多くは得られませんでした。コミット メッセージの冒頭に、次のように表示されます。

could not import hgext.hgext.mq (No module named hgext.mq): trying hgext.mq
could not import hgext.hgext.transplant (No module named hgext.transplant): trying hgext.transplant

つまり、これら 2 つのファイルが見つからないということですが、なぜでしょうか?

あなたのご親切に感謝します。

EDIT2: 最初の EDIT は無関係の問題であり、この特定の質問については無視できることに注意してください。

4

1 に答える 1

2

あなたのファイルにdebug = True以下を追加できますか?これにより、さらに出力が得られ、このフックの場所についての洞察が得られる可能性があります[ui].hgrc

于 2013-03-24T00:10:32.387 に答える