Edit real content conflicts

The conflicts of a file in the conflicted state (a file with the red double arrow icon) can be edited visually with the Compare view (the built-in file diff tool) or with an external diff application to decide for each conflict if the local version of the change will remain or the remote one instead of the special conflict markers inserted in the file by the SVN server.

The Compare view (or the external diff application set in Preferences) is opened with the action Edit Conflict which is available on the context menus of the Synchronize view and the Working Copy view and is enabled only for files in the conflicted state (an update operation was executed but the differences could not be merged without conflicts). The external diff application is called with 3 parameters because it is a 3-way diff operation between the local version of the file from the working copy and the HEAD version from the SVN repository with the BASE version from the working copy as common ancestor.

If the option Show warning dialog when edit conflicts is enabled you will be warned at the beginning of the operation that the operation will overwrite the conflict version of the file received from the SVN server (the version which contains the conflict markers <<<<<<<, =======, >>>>>>>) with the original local version of the file that preceded the update operation. If you press the OK button the visual conflict editing will proceed and a backup file of the conflict version received from the SVN server is created in the same working copy folder as the file with the edited conflicts. The name of the backup file is obtained by appending the extension .sync.bak to the file as stored on the SVN server. If you press the Cancel button the visual editing will be aborted.

The usual operations on the differences between two versions of a file are available on the toolbar of this view:

Save

Save the modifications of the local version of the file displayed in the left side of the view.

Perform Files Differencing

Apply the diff operation on the two versions of the file displayed in the view. It is useful after modifying the local version displayed in the left side of the view.

Go to First Modification

Scroll the view to the topmost difference.

Go to Previous Modification

Scroll the view to the previous difference. The current difference is painted with a darker color than the other ones.

Go to Next Modification

Scroll the view to the next difference. The current difference is painted with a darker color than the other ones.

Go to Last Modification

Scroll the view to the last difference.

Copy All Non Conflicting Changes from Left to Right

Not applicable for editing conflicts so it is disabled.

Copy Change from Left to Right

Not applicable for editing conflicts so it is disabled.

Copy Change from Right to Left

Copy the current difference from the left side to the right side by replacing the highlighted text of the current difference from the left side with the one from the right side.

Copy All Non Conflicting Changes from Right to Left

Apply the previous operation for all the differences.

Show Modification Details at Word Level

Display a more detailed version of the current difference computed at word level.

Show Modification Details at Char Level

Display a more detailed version of the current difference computed at character level.

Ignore Whitespaces

The text nodes are normalized before computing the difference so that if two text nodes differ only in whitespace characters they are reported as equal.

The operation begins by overwriting the conflict version of the file received from the SVN server (the version which contains the conflict markers <<<<<<<, =======, >>>>>>>) with the original local version of the file before running the update action which created the conflict. After that the differences between this original local version and the repository version are displayed in the Compare view.

If you want to edit the conflict version of the file directly in a text editor instead of the visual editing offered by the Compare view you should work on the local working copy file after the update operation without running the action Edit Conflict. If you decide that you want to edit the conflict version directly after running the action Edit Conflict you have to work on the .sync.bak file.

If you did not finish editing the conflicts in a file at the first run of the action Edit Conflict you can run the action again and you will be prompted to choose between resuming the editing where the previous run left it and starting again from the conflict file received from the SVN server.

After the conflicts are edited and saved in the local version of the file you usually run the action Mark Resolved on the file so that the result of the conflict editing process can be committed to the SVN repository or the action Revert so that the repository version overwrites all the local modifications. Both actions remove the backup file and other temporary files created with the conflict version of the local file.