リビジョンはツリーごとにあるため、最初にリビジョンの「変更」を取得する必要があります
svn diff -r <start revision>:<end revision> --summarize <root svn URL>
次のような出力が生成される可能性があります
A file:///home/xxx/svn/yyy/trunk/src/main/java/com/proj/App.java
A file:///home/xxx/svn/yyy/trunk/src/main/java/com/proj
A file:///home/xxx/svn/yyy/trunk/src/main/java/com
A file:///home/xx/svn/yyy/trunk/src/main/java
A file:///home/xxx/svn/yyy/trunk/src/main
A file:///home/xxx/svn/yyy/trunk/src
A file:///home/xxx/svn/yyy/trunk/pom.xml
M file:///home/xxx/svn/yyy/trunk
ブランチは SVN のディレクトリとして実装されるため、プロジェクトのルートと、(慣例により) 「ブランチ」と見なされる直下のサブディレクトリを決定する必要があります。
上記の例では
file:///home/xxx/svn/yyy/
プロジェクトの「ルート」URL と見なされるため、
file:///home/xxx/svn/yyy/trunk
チェックインされた「ブランチ」は
trunk
他のアイテムがチェックインされたことに注意してください
trunk/src/main/java/com
しかし、私の慣例では、それはブランチではありません。何がブランチであるかの決定は従来のものであるため、どのブランチが影響を受けたかを最後に決定するには、特定の SVN 設定に関する知識が必要になります。私の場合
branches/branchA
私自身は(私のプロジェクトのために)ブランチと見なされますが、
branches/branchA/src
ブランチとは見なされません。