Subversionのリポジトリ上から2つのリビジョンの差分ファイルをピックアップするスクリプト

Bash

svndiffexp

#!/bin/bashtarget=`svn info |grep'URL: '|sed's/URL: //g'`r1=$1r2=$2todir=$3list=""for f in`svn diff ${target} -r${r1}:${r2} --summarize |grep -v ^D |sed -e "s@^. *${target}/@@g"`doif [-f"$f"]thenlist="$list$f"fidone
tar cf - $list | (cd"${todir}"; tar xvf -)

使い方

your_svn_work_dirというsvnの作業コピーディレクトリから、リビジョン10~12で変更されたファイルをピックアップする。

$ cd your_svn_work_dir
$ svndiffexp 1012 ~/modfiles/

Bash