I need to get the latest changes from trunk into my branch, so i executed a svn merge ^/trunk/FW
which until now has worked just fine (with minor conflicts that I've been able to fix manually). But I'm now getting a conflict that I don't know how to fix or even read/understand:
Conflict discovered when trying to add 'src/rtos_core/jpax_bsp_vip/jpax_vip_console'.
An object of the same name already exists.
Select: (mf) my version, (tf) their version, (p) postpone,
(q) quit resolution, (h) help:
What does this mean, why does it pop-up and how can I fix it?
Thanks!
EDIT1
So I tried to move it to a temporary location with:
mv src/rtos_core/jpax_bsp_vip/jpax_vip_console ~/tmp/jpax_vip_console
and then I selected tf (their version)
upon which I'm told:
svn: E155027: Tree conflict can only be resolved to 'working' state; '/home/ron/src/NextGen/branches/Ron/src/rtos_core/jpax_bsp_vip/jpax_vip_console' not resolved
.
Okay, so I go again with svn merge ^/trunk/FW
and now it tells me: svn: E195016: Merge tracking not allowed with missing subtrees; try restoring these items first: /home/ron/src/NextGen/branches/Ron/src/rtos_core/jpax_bsp_vip/jpax_vip_console
So I guess this is not the correct way to do it, but what is then?
EDIT2
Okay, so now, after resolving a few other conflicts, I have completed the merge and now on commit I get this:
$ svn ci -m " merged changes from trunk"
svn: E155015: Commit failed (details follow):
svn: E155015: Aborting commit: '/home/ron/src/NextGen/branches/Ron/src/rtos_core/jpax_bsp_vip/jpax_vip_console' remains in conflict
Why does it say it remains in conflict, svn stat gives me:
...
> moved to src/rtos_core/jpax_bsp_vip/jpax_vip_console.2
...
...
C src/rtos_core/jpax_bsp_vip/jpax_vip_console
> local dir obstruction, incoming dir add upon merge
...
The original conflict arose because the
jpax_vip_console
file/folder was added in the trunk and your branch independently. When you try to merge trunk now, svn does not know what to do, since both versions ofjpax_vip_console
are unrelated.The easiest solution would be to rename the problematic entity using svn commands, ie something like
svn mv jpax_vip_console jpax_vip_console.2
. Then commit. Afterwards, you should be able to merge trunk without conflict.If you want to actually merge the two versions of
jpax_vip_console
, you have to do it manually after the trunk merge , as svn does not allow you to content-merge unrelated items. In that case you need to pick one version of the item, for which you would like to keep the commit history, and hand-merge the other version into it.