23

私は仕事でいくつかのリポジトリに取り組んでおり、SVNリポジトリに何か変更があった場合は通知を受け取りたいと思います。

svn log -r BASE:HEAD作業コピーでを実行し続ける小さなBATスクリプトを作成しました(はい、BATが役立つ場合があります) 。すべての送信コメントと改訂日が表示されます。それは本当にうまく機能しますが、異なるリポジトリには快適ではありません。

リポジトリの変更をどのように追跡しますか?自分で作った小さなプログラムを使っていますか?他の誰かが作ったソフトウェアを使用していますか?私はこの問題へのあらゆるアプローチに興味があります。

コミットに関する通知と詳細情報を受け取りたいのですが。IDE統合機能は優れていますが、情報を要求した場合にのみ機能します。
私はこの情報を得るために行動したくありません。

プラットフォーム:Windows、Subversion1.5以降。

4

7 に答える 7

33

私はCommitMonitorを使用しています; TortoiseSVN開発者の1人からです。複数のSVNURLを簡単に追加して、コミットをチェックする間隔を監視および指定できます。更新が見つかると、画面の隅に小さなポップアップウィンドウが表示されます。

SVNモニターもありますが、使用とセットアップが少し複雑です。コミットに関するメッセージを表示するだけでなく、変更したファイルを表示したり、変更をコミットするように通知したりすることもできます。

于 2010-02-17T08:21:00.380 に答える
5

TortoiseSVNがインストールされている場合は、 SVNNotifierを使用できます。

于 2010-02-17T10:02:27.087 に答える
2

WebSVNをインストールし、興味のあるパスのRSSフィードを購読しています。

于 2010-02-17T11:12:43.767 に答える
1

Eメール。電子メールを送信するためのSVNコミット後フックの例は、Subversion自体にあります。

于 2010-03-29T04:09:00.657 に答える
1

PowerShellを使用して、SVNブランチの変更を検出してデプロイします。このスクリプトは、タスクスケジューラから呼び出され、SVNルートから実行される必要があります(または、単にループして永久にスリープすることができます)。

function get-revision() {
    $rev = svn info 2>&1 | sls '^Last Changed Rev:' | out-string
    $rev = $rev -split ':'
    $rev[1].Trim()
}

function if-changed([string]$branch, [scriptblock]$script) {
    Write-Verbose "Checking for changes: $branch"
    pushd $branch
    $r = get-revision

    if ($r -gt $status[$branch]) {
        Write-Verbose "|- '$branch' changed, revision $r"
        & $script
    }
    else { Write-Verbose "|- '$branch' is up to date at revision $r" }
    $status[$branch] = $r
    popd
}

svn update
Write-Verbose "Getting the deploy status"
if (Test-Path status) { $status = Import-Clixml status } else { Write-Verbose "|- No status found"; $status=@{} }

if-changed trunk { "Deploying trunk..." }

これは、上記のサードパーティアプリケーションを使用するよりもはるかに簡単で移植性があります。

于 2015-03-24T07:32:12.377 に答える
0

svn info | grep Revision私のために働きます。たとえば、次のように表示されます。

Revision: 183

思った通りに変わったら、さらに調べてみます。

于 2010-02-17T07:31:14.083 に答える
0

私が使う

svn status --show-updates

変更したファイルと、リポジトリで変更したファイルを表示します。

Subversionのフックスクリプトを使用して通知を設定できます。

于 2010-02-17T07:40:34.983 に答える