Resolve Merge Conflicts without Visual Merge

See Also

If you choose not to use the visual merge, and want to customize how VSS displays merge conflicts in the manual merge, one way is to set the Mark_Merges initialization variable in your SS.INI file. For example in the file, type:

Mark_Merges = yes

Using the visual merge means you don't have to worry about conflict markers. But, if you use Mark_Merges, VSS:

The following is an example of what the VSS conflict markers may look like.

<<<<<< SourceSafe version
if (a <= 5)
|||||| Original version
if (a < 5)
======
if (a < 6)
>>>>>> Local version

The format is similar to the manual merge conflict marker, except that VSS displays the original (pre-checkout version) between the master and local versions, which can be helpful to you in determining how best to clean up the file.

Setting Merge Options in the Initialization Files

You can set the following two initialization variables to change the file extensions used by the merge process.

Backup_Ext = .ORG
Merge_Ext = .MRG

Backup_Ext controls what happens to your original (pre-merged) file after the merge has taken place. By default, VSS deletes the file if there was no conflict; it renames the file .org if there was a conflict. When you set this variable, however, VSS always renames the file, so you always have a copy of your original. You can set this to the default .org extension, or to a different extension if .org is already used by your system.

Merge_Ext controls the extension that VSS uses for its temporary merge file. This file is always deleted after the merge process is completed the only reason to change it is if the extension .mrg is already used by your system.