在分支中移动一些目录后,如何处理 SVN 合并?

lei*_*eif 5 svn

假设我有以下内容:

trunk/
|-+ d1/
| |-- bar.c
| \-- foo.c
\-+ d2/
  \-- baz.txt
Run Code Online (Sandbox Code Playgroud)

我愿意svn cp trunk branch,并且承诺。

现在,我在 中进行一些清理branch

$ svn mkdir src
$ svn mv d1 src/
$ svn commit
$ edit src/d1/foo.c
$ svn commit
Run Code Online (Sandbox Code Playgroud)

这给我留下了以下内容branch

branch/
|-+ d2/
| \-- baz.txt
\-+ src/
  \-+ d1/
    |-- bar.c
    \-- foo.c
Run Code Online (Sandbox Code Playgroud)

同时,trunk(编辑foo.cbar.c)也发生了一些变化。

现在,从哲学上讲,我希望branch的目录结构能够反映在 中trunk,并且我也希望在那里对其文件进行的编辑。trunk但我也想要我工作时发生的编辑。trunk/d1/foo.c所以我想合并和的内容branch/src/d1/foo.c

向任一方向(trunktobranchbranchto trunk)合并都会给我带来大量的树冲突。有没有比处理svn info每个冲突并仔细手动解决问题更好的方法呢?