Handling conflicts in SVN with Tortoise?
conflict, svn, tortoisesvn
Solution
When you update your working copy you can right-click in the log list and chose how to resolve the conflict:
- resolve using an editor / TortoiseMerge (or whatever merge tool you configured)
- resolve using "theirs", i.e. the version in the repository
- resolve using "mine", i.e. your version of the file.
This also works when deleting files properly -- i.e. you need to delete the file using svn if you want to actually delete it from the repository. If you removed the file for convenience reasons you might want to `svn revert` it before updating as a file missing from the working copy is a modified file too (unsurprisingly).
To sum it up: you can't tell svn to "stop crying" and simply overwrite with your working copy. This is a good thing. You need to resolve the conflict (which could mean simply overwriting the current state), mark the affected files as resolved (`svn resolved`) and then commit the result.
Problem
Any time an issue comes up like a merge conflict or something similar, it really slows me down. Can someone explain to me how to force-resolve conflicts? For example, a buddy of mine made an edit to a file on the repository and committed. While he was doing that, I had already renamed that file and made many edits to it on my working copy. When I went to commit, I get the conflict error obviously. The file he edited doesn't even exist anymore on my working copy. How can I tell SVN to simply quit crying about the conflict and force it to accept my working copy (ie, overwrite the head revision with my working copy).