4

私は SQL スクリプトのリポジトリを持っており、その一部は毎月のリリースごとに変更されます (異なるスクリプトは毎月変更されます)。

展開パッケージのコンパイルを自動化しようとしていますが、最後のリリース以降に変更されたすべてのスクリプトをエクスポートできるようにしたいと考えています。これには既知の日付と既知のリビジョンがあります。

SVN ブランチはリリースごと、SVN タグはビルドごとです。

私はグーグルで調べてsvn diff --summarize -r {2012-05-01} svn://server/path/to/ > files.txt、すべての変更のリストが得られることを知っていますが、そのリストを使用してWindows CMDを使用してそれらのファイルのみをエクスポートするにはどうすればよいですか-私が見つけたすべての例はLinux用であり、Linuxコマンドを使用しています.

SVNでこれを行う他の直接的な方法はありますか? (SVNエクスポートを使用していますか?)

4

1 に答える 1

1
  1. 日付ではなく、リビジョン番号を開始リビジョンとして使用します。これはより防弾です
  2. 最終リビジョンが HEAD であっても、リビジョン範囲を使用します: より防弾です

    • Windows でも Bash を使用でき、Bash スクリプトを使用できます
    • Ruby をインストールして Ruby スクリプトを使用する (または Ruby を exe にコンパイルする) ことができます。

やっと

  • TortoiseSVN をインストールし、GUI でツリーを手動で準備できます。

また

  • 差分出力の独自のパーサーを作成します (PoserShell が行います)。

>svn diff --summarize -r 26:34 http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/

A http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/Dr%C3%A6p%C3%A6r.ma%C3%BEar.sv%C3%A6nskan.man.eller.smalensk%C3%A6n.txt

M http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/Hello.en.txt

M http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/Hello.fr.txt

M http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/Hello.de.txt

M http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk

(行の最初の文字に A|M があるすべてのファイルをコピーするか、path-base /filter last string in my example/ の後に末尾のスラッシュがあるすべての文字列を pre-grep します)

于 2012-12-25T03:42:58.973 に答える