シナリオは次のとおりです。
ユーザー1
- ブランチ/Xを作成します
- svnチェックアウトブランチ/Xからローカルマシンへ
- file.txtを変更する
- 変更をコミットする
別のユーザー、ユーザー2
- ブランチを作成/Y
- svn checkout branchs/Yを彼のローカルマシンに
- branchs / Xをローカルマシンにマージします(したがって、file.txtをbranchs / Yにマージします)
- svn diffを使用して、変更をコミットする前に、branchs/Yのローカルコピーのfile.txtへの変更が成功したことを確認します。
svn diffはローカルの作業コピーをURLの作業コピーと比較できないため、ユーザー2のステップ4は、最初にブランチ/Yに変更をコミットしないと実行できません。ただし、これにより、マージの変更をコミットする前に、マージによって正しい結果が生成されたことを確認するという目的全体が無効になります。
私はこれをグーグルで検索しましたが、使用可能な解決策は見つかりませんでした。唯一推奨される解決策は、svnが2つのパスを比較できるようにbranchs/Xをチェックアウトすることです。マージの変更はまだチェックインされていないため、2つのURLでsvndiffを使用することはできません。
時間と手間がかかることは言うまでもなく、diffを実行できるようにするためだけにbranchs/Xとbranchs/Yの両方をチェックアウトすることは実用的ではありません。
まだコミットされていないローカル作業コピーのマージされた変更を、マージブランチの変更と比較する方法はありますか?