1

svn post-commit フックで jenkins ジョブをトリガーしようとしています。しかし、私は以下のエラーを取得しています: 私のジェンキンスは ###.###.1.7:8080 のウィンドウにあります 仕事は: //###.###.1.7:8080/job/hooks_test/ 2分ごとに構成されたSCM POLL。

エラーメッセージ:

警告: コミット後のフックが失敗しました (終了コード 1)。出力: svnlook: Expected FS format '2'; フォーマット '6' が見つかりました svnlook: 期待される FS フォーマット '2'; フォーマット '6' が見つかりました

--2014-10-18 13:37:00-- //###.###.1.7:8080/subversion//notifyCommit?rev=51 ###.###.1.7:8080 に接続しています。 ..接続されました。

HTTP 要求が送信され、応答を待っています... 404 見つかりません 2014-10-18 13:37:00 エラー 404: 見つかりません。

助けてください

===========

サーバー側のポストコミット:

REPOS="$1" REV="$2" UUID=svnlook uuid $REPOS
/usr/bin/wget \ --header "Content-Type:text/plain;charset=UTF-8" \ --post-data "svnlook changed --revision $REV $REPOS" \ --output-document "-" \ --timeout=2 \ //###.###.1.7:8080/subversion/${UUID}/notifyCommit?rev=$REV `

4

1 に答える 1

1

大きくて明白な問題が 2 つあります。

  • 「期待されるFSフォーマット '2'; 見つかったフォーマット '6'」は、平易な言葉で「あなたのSVN CLIツールのバージョンはマンモスのでたらめのように古いですが、新しいバージョンで作成されたリポジトリとSVNはそれを処理できません」という意味です。つまり、FS フォーマット 2 は Subversion 1.4、フォーマット 6 - Subversion 1.8 です。svnadmin create --pre-1.6-compatibleSubversion を更新する (より良い) か、または(より悪い)で作成された別のリポジトリにリポジトリを移行します。
  • 「###.###.1.7:8080に接続しています。404 Not Found」も明確です-URLに接続しようとし/subversion/${UUID}/notifyCommitましたが、このパスがサーバー上で見つかりませんでした(httpサーバーが動作している間)。svnlookからuuidがないためです- URLで/subversion//notifyCommit よく見る
于 2014-10-19T00:16:42.590 に答える