使用 SVN 在 intellij IDEA 中合并与新创建的相同目录的冲突

Merge Conflict with identical new created directories in intellij IDEA with SVN

背景:

我们使用最新的 IntelliJ IDEA 2019.3.3(终极版)和 SVN 作为存储库。

问题:

如果两个人在他们的本地签出中创建一个包含自己内容的新的相同目录并想要提交这些文件,则第二个提交者会发生冲突。到目前为止这很好。 结果如下:Intellij 仅提供 "Accept Yours" 或 "Accept Theirs" 的选项,但不提供合并选项。

为什么?

如果我们接受 "their"-版本,我们将 "replace"(正如稍后在 "affected files overview" 中宣布的那样)我们的整个目录及其版本并自动删除我们的内容,如果我们使用 "yours"-version 我们将完全接受我们的版本,但删除 "their" 提交的所有内容文件。在这种情况下,我们需要的是合并到一个目录并接受两个内容的选项。

是否有其他方法可以解决此问题并接受两个目录内容?

例如:

用户 1 提交新目录,内容为:

sameDirectory
|- UserOneFileOne.java

用户 2 提交了同名但内容有冲突的新目录:

sameDirectory
|- UserTwoFileOne.java

接受 "Theirs" 版本的结果:

sameDirectory
|- UserOneFileOne.java

接受 "Yours" 版本的结果:

sameDirectory
|- UserTwoFileOne.java

想要的结果:

sameDirectory
|- UserOneFileOne.java
|- UserTwoFileOne.java

IntelliJ 依赖命令行 svn 客户端,而 svn 不支持此类合并。这是一个树冲突,要解决它必须接受一个树枝或另一个

If you agree with the move, your bar.c is superfluous. You'll want to delete it and mark the tree conflict as resolved. But wait: you made changes to that file! Before deleting bar.c, you need to decide if the changes you made to it need to be applied elsewhere, for example to the new baz.c file where all of bar.c's code now lives. Let's assume that your changes do need to “follow the move”. Subversion isn't smart enough to do this work for you[10], so you need to migrate your changes manually.

http://svnbook.red-bean.com/en/1.8/svn.tour.treeconflicts.html