場合によっては、何らかの条件が満たされた場合にのみコミット後の操作を実行する必要があります。
たとえば、コミットされたリビジョンが「/tags」ディレクトリに影響する場合にのみ電子メールを送信します。このような Windows 環境で実行するスクリプト サンプルを Web で検索しましたが、何も見つからなかったため、自分で作成する必要がありました。
場合によっては、何らかの条件が満たされた場合にのみコミット後の操作を実行する必要があります。
たとえば、コミットされたリビジョンが「/tags」ディレクトリに影響する場合にのみ電子メールを送信します。このような Windows 環境で実行するスクリプト サンプルを Web で検索しましたが、何も見つからなかったため、自分で作成する必要がありました。
commit.bat後のコード:
REM The command checks whether the committed revision changes any data under '/tags'
"%VISUALSVN_SERVER%bin\svnlook.exe" dirs-changed %1 --revision %2 | findstr /b "[Tt]ags"
REM If 'findstr' returns error code 0, it means that the commit involves the '/tags' directory.
REM So if the the returned code is 0 the command runs external batch 'post-commit-run.bat'
If %ERRORLEVEL% EQU 0 call %~dp0post-commit-run.bat %*
私はあなたが求めていることを正確に行うポストコミットウォッチャースクリプトを持っています。これは Perl スクリプトですが、Windows 用の Perl は ActiveState または Strawberry Perl プロジェクトからダウンロードできます。
私のコミット後のフックはGitHubにあります。構成ファイルを使用して、監視するディレクトリを指定します。(実際には、各ユーザーが独自の構成ファイルをセットアップできます)。