小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


Subversionで差分ファイルの一覧をxmlファイル形式で出力する

はじめに

Subversionで変更のあったファイルの一覧を取得したいときは、svn diffコマンドが使えます。

「Subversion」解説書 <バージョン管理システム> Linux world favorite series
Subversion開発プロジェクト
IDGジャパン
売り上げランキング: 568505

リビジョン番号を指定する場合

以下のコマンドは、リビジョン番号3から最新までの間に変更されたファイルを出力します。このとき、カレントディレクトリを作業コピーのディレクトリにしておく必要があります。

svn diff -r 3:head --summarize .
日付を指定する場合

2011/11/24から最新までの間に変更されたファイルを出力します。

svn diff -r{2011-11-24}:HEAD --summarize .
差分ファイルの一覧をxmlで出力する

差分ファイルの一覧をxmlで出力するには--xmlオプションを指定して、パイプでファイル名を指定します。

svn diff -r 11:HEAD --xml --summarize . > diff.xml

出力されたxmlファイルは以下のようになっています。このxmlファイルをwsfやvbsで読み込んでごにょごにょすれば、差分ファイルのみをエクスポートすることができそうです。

<?xml version="1.0" encoding="UTF-8"?>
<diff>
<paths>
<path
   props="none"
   kind="file"
   item="modified">Sub1\Sub2\a.cpp</path>
</paths>
</diff>