1

以下は、テキストとオープン トラック チケットをチェックするための pre-commit フックのコードです。テキストチェックは機能しますが、代入が svnlook からテキストを取得して変数 $LOG に配置すると、ログが見つからないというエラーが発生します。私はただ精神的で愚かなことをしているだけだと確信していますが、なぜこれが機能しないのかについて私を回避しています。任意の助けをいただければ幸いです。

REPOS="$1"
TXN="$2"
SVNLOOK=/usr/bin/svnlook

# Make sure that the log message contains some text.
$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" > /dev/null || exit 1

# Exit on all errors.
set -e

#ensure the commit is assciated to a TRAC ticket
TRAC_ENV="/trac"
LOG=$SVNLOOK log -t "$TXN" "$REPOS"
/usr/bin/python /trac/conf/trac-pre-commit-hook "$TRAC_ENV" "$LOG" || exit 1
4

1 に答える 1

1
LOG=$SVNLOOK log -t "$TXN" "$REPOS"

これは(その行のみ) に設定LOGされ、その後に続くパラメーターで$SNVLOOK実行を試みます。そのコマンドの出力をenvlogに保存したい場合。LOG変数、次のようなものを使用します。

LOG=$($SVNLOOK log -t "$TXN" "$REPOS")

また

LOG=`$SVNLOOK log -t "$TXN" "$REPOS"`
于 2011-11-13T17:27:08.743 に答える