After performing the merge, you might also need to resolve some conflicts
(just as you do with svn update
) or possibly make some small edits to get
things working properly.
Remember: just because there are no syntactic conflicts doesn't mean there aren't any semantic conflicts!
If you
encounter serious problems, you can always abort the local changes by
running svn revert . -R
(which will undo all local modifications) and
start a long what's going on? discussion with your collaborators.
If you don't like the results of the merge, simply runsvn revert . -R
to revert the changes from your working copy and retry the command with different options. The merge isn't final until you actuallysvn commit
the results.
...
While it's perfectly fine to experiment with merges by runningsvn merge
andsvn revert
over and over, you may run into some annoying (but easily bypassed) roadblocks.
For example, if the merge operation adds a new file (i.e., schedules it for addition),svn revert
won't actually remove the file; it simply unschedules the addition. You're left with an unversioned file. If you then attempt to run the merge again, you may get conflicts due to the unversioned file“being in the way.”
Solution? After performing arevert
, be sure to clean up the working copy and remove unversioned files and directories. The output ofsvn status
should be as clean as possible, ideally showing no output.
Casiano Rodríguez León