0

.hgrc ファイルに pre-commit フックがあり、5MB を超えるファイルがリポジトリに追加されるかどうかをチェックします。フックは次のとおりです。

pre-commit.added-files-too-large = test 5000 -gt `hg status --added --no-status --print0 | xargs --null ls -lk | awk \'{sum += $5} END {print sum}\'`

これは Linux (bash を使用) では問題なく動作しますが、MinGW では動作しません。MinGW シェル コマンド ラインから同じコマンドを実行するだけで、期待どおりに動作します。

エラーメッセージは

test: invalid integer ``hg'

エラーは引用の仕方に関係していると思われますが、多くの組み合わせを試しました (バッククォートを $() に変更するなど) が、正しい答えが見つからないようです。

どんな助けや指針も大歓迎です。

4

1 に答える 1

0

私の推測では、埋め込まれたスクリプトが何らかのエラーを出力するため、test は数値ではなく文字列を認識します。

hs status...コマンドラインからコマンドを実行して、出力される内容を確認します。

于 2011-06-03T11:37:05.657 に答える