On Mon, Feb 24, 2020 at 06:03:05PM +0100, Thorsten Schöning wrote:
> Hi all,
>
> I have a repo with 178'000 revisions, and need to sync-merge 2
> features branches: "feature1" and "feature2" created from "trunk" at
> different times and "feature1" merged into "feature2" successfully
> some days ago already. That merge needs to be repeated now, but I'm
> runnig into trouble.
>
> The problem is that "feature2" is about refactoring the directory
> layout of "feature1", especially some directories got moved. I used
> "svn mv" for that so that it could keep track of that in theory. The
> following is a simplified example:
>
> * feature1
> * mod1/src/de/File1.java
> * mod2/src/de/File2.java
> * feature2
> * mod1/src/main/java/de/File1.java
> * mod2/src/main/java/de/File2.java
>
> During merging SVN runs into conflicts because the merge-target dirs
> of "mod1" and "mod2" don't exist anymore. I'm using TortoiseSVN and
> that tries to find the new merge targets and does so successfully for
> "mod1". The problem is that for the changes of "mod2", SVN suggests
> the target dir of "mod1" as well again instead of "mod2" and this way
> the conflict can't be resolved ever.
>
> Is there some way to tell SVN the correct target dir? Or how should
> that be resolved? The only thing I can currently think of is manually
> applying patches.
Can you try this with the command line instead of TortoiseSVN please?
If several possible move targets exist, the 'svn' client will offer
'd' and 'w' conflict options which may help you to set the right
destination paths.
This feature only works if the SVN client implements support for it.
If TSVN did not do that, then they are missing this feature.
I am not sure how far TortoiseSVN went with their resolver implementation.
Received on 2020-02-24 21:04:58 CET