16

私は Subversion リポジトリを使用していますが、誰かが私のリポジトリにチェックアウトを要求するたびに知りたいです。「svn co」または「svn up」のように。誰かが私のsvnサーバーから情報を要求するたびに、スクリプトを実行したり、電子メールを送信したりするために使用できるフックまたはその他の方法はありますか? Apache ログに頼らずにこれを達成するにはどうすればよいですか?

ところで、それは教育目的のためだけの非常に単純なリポジトリです。

(さらに情報が必要な場合は、お尋ねください。よろしくお願いします。)

4

3 に答える 3

11

以下は Subversion 1.5 でサポートされているすべてのフックです (Subversion によるバージョン管理の本から):

  • 開始コミット
  • 事前コミット
  • ポストコミット
  • pre-revprop-change
  • revprop 変更後
  • プレロック
  • ポストロック
  • プレアンロック
  • ロック解除後

あなたが説明したようなチェックアウト前または更新前のフックはありません。

于 2009-04-30T01:11:53.083 に答える
5

TortoiseSVN を使用している場合は、クライアント側のフックにアクセスできます。

于 2009-04-30T01:31:50.383 に答える
0

Apache を SVN サーバーとして使用し、(たとえば) mod_perl を使用してリクエストにフックすることで、好きなことを行うことができます。ログ ファイルには、必要な情報が既に表示されている可能性があります。

SSH 経由の SVN も可能である必要があります: SVN クライアントによって開始されたコマンドを分析し、それらをラップします (たとえば、元のバイナリの名前を ".orig" 拡張子に変更し、(シェル) スクリプトをその場所に配置することによって)。

于 2016-06-29T11:33:49.463 に答える