このリクエストのタイトルがすべてを物語っています。.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 は無関係の問題であり、この特定の質問については無視できることに注意してください。