1

SVN コミットの電子メール通知の送信に取り組んでおり、次の手順に従っています: http://sandilands.info/sgordon/email-notifications-of-svn-commits

テストすると、次のエラーが発生します。

エラー: post-commit フックが失敗しました (終了コード 127) 出力:
エラー: /repos/cle/hooks/post-commit: 50: commit-email.pl: 見つかりません
エラー: /repos/cle/hooks/post-commit : 51: log-commit.py: 見つかりません

経験を共有したい人はいますか?

4

2 に答える 2

1

私のSVN Watcher post-commit フック スクリプトを見たいと思うかもしれません。コミット時に電子メールを送信しますが、関心のあるファイルを指定するようにウォッチを構成できます。さらに、すべてのユーザーは、コミットが発生したときに関心のあるファイルのウォッチ リストを作成できます。

エラー メッセージは非常に単純明快です: 名前付きスクリプトが見つかりません (おそらく、Perl バージョンまたは Python バージョンのみを使用する必要があり、両方を使用する必要はありません。エラーは複数の問題によって引き起こされる可能性があります:

  • セットが正しくありませんPATH。環境変数とシェル変数を使用した Subversion マックが設定されていない可能性があります。これにはPATH、デフォルト値に設定されている可能性があるものが含まれます。
  • Perl および Python スクリプトには、フックを実行しているユーザーの実行可能ビットが設定されていない場合があります。
  • Perl および Python スクリプトのプロセッサ行に問題がある可能性があります (たとえば、Perl は にインストールされて/usr/bin/perlいますが、最初の行は です#! /usr/local/bin/perl)。
  • Perl または Python インタープリターがパスにない可能性があります。

post-commitがシェル スクリプトの場合は、先頭にset -xvandexport PS4="\$LINENO:を追加します。これにより、デバッグ情報が出力されるため、スクリプトで何が起こっているかを確認できます。これは、シェル スクリプトが失敗した場合にのみ出力されます。

于 2013-08-27T15:11:35.280 に答える
1

commit-email.pl と log-commit.py が見つからない (実行できない) ようです。パスにそれらが必要であるか、呼び出し時にフルパスで指定されている必要があります(これらがあることを確認するだけでなく)。

于 2013-08-23T19:30:04.973 に答える