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).

Original source