2010-12-15 5 views
1

Subversionトランクで変更されたファイル、特定のブランチで変更されていないファイル、ファイルは両方とも変更されています。Subversionでは、トランク上で変更されたブランチではなく、両方で変更されたファイルを一覧表示します。

現在、私のアプローチは、トランクとブランチで変更されたファイルのリストを取得し、ファイル差分ツールを使用してその違いを確認することです。

これよりも優れた手法はありますか?

答えて

1

あなたは、UNIXのシェル(またはuniqは、ソートやSEDツール)へのアクセス権を持っているときは、次の操作を行うことができます:

# getting the changed file list in trunk 
svn diff --summarize /path/to/repos/[email protected] /path/to/repos/trunk | sed -e 's/......//' > changes-trunk 
# the sed part removes the status columns, which might cause uniq to fail identifying equal files 

# getting the changed file list of the branch 
svn diff --summarize /path/to/repos/[email protected] /path/to/repos/branch/foobar| sed -e 's/......//' > changes-branch 
# display the files which changed on both branches 
sort changes-trunk changes-branch | uniq -d > possible-conflicts 

# getting the base file list 
svn ls -R /path/to/repos/[email protected] > files-base 
# getting the list of files not changed in trunk 
sed -e "s# /path/to/repos/[email protected]/##" changes-trunk | sort - files-base | uniq -u > untouched 
関連する問題