Gitkraken Svn



Beyond Compare is a multi-platform utility that combines directory compare and file compare functions in one package. Use it to manage source code, keep directories in sync, compare program output, etc. Distributed Version Control – Git uses a distributed method for version control, which is a stark contrast compared to SVN’s centralized method. This means that each user clones a full version of the repository to their local machine, which is advantageous in several ways. Our team is new to git (we are more an svn shop). We are trying to figure out the concepts, but sometimes we see odd results. For example, here is a screenshot from GitKraken: The blue line is the. GitKraken is a Git GUI client for Windows, Mac, and Linux. It helps developers become more productive and efficient with Git. It’s free for non-commercial use. (Need a Pro license to connect to Azure Devops).

For macOS, see this article.

Beyond Compare can be configured as the external difference utility in many popular VCS applications. The following are configuration instructions for specific products. Let us know if you have one to add to the list.

Unless otherwise specified, all examples are based on Beyond Compare version 4.

Beyond Compare version 3 users should replace '4' with '3' appropriately.

Beyond Compare version 2 users should replace BComp.exe with BC2.exe and change the path to Beyond Compare 2's install folder.

Linux users should prefix command line switches with '-' instead of '/'.

64-bit Windows users of 32-bit BC (older than version 4.1) should replace 'C:Program Files' with 'C:Program Files (x86)'.

Index:
AccuRevAnkhSVNCA Software Change ManagerClearCaseClearCase Remote ClientCVSDimensions CM / PVCS / SerenaGit for LinuxGit for WindowsGit Integration for EclipseGitHub DesktopGit ExtensionsGit ForkKDESVNMercurial / TortoiseHgMKS Integrity / PTC IntegrityNetBeansPerforcePlastic SCMRational SynergyRoboHelp HTMLRoundtable TSMSSmartGitSourceAnyWhere for VSSSourceGear VaultSourceOffSiteSourceTreeStarTeamSubversionSurround SCMTeam CoherenceTortoiseCVSTortoiseGitTortoiseSVNTower (Git)Visual SourceSafe 2005Visual Studio - GitVisual Studio - Team Foundation Server (TFS)Visual Studio - Visual SourceSafe 2005

AccuRev

Windows

  1. Select Preferences from the Tools menu.
  2. Switch to the Diff/Merge tab.
  3. Diff: overwrite the preset with: 'C:Program FilesBeyond Compare 4bcomp.exe' %1% %2% /lefttitle='%3%' /righttitle='%4%'
  4. Merge : overwrite the preset with: 'C:Program FilesBeyond Compare 4bcomp.exe' %1% %2% %a% /mergeoutput=%o% /lefttitle='%4%' /righttitle='%5%' /centertitle='%3%'

Linux

  1. Select Preferences from the Tools menu.
  2. Switch to the Diff/Merge tab.
  3. Diff: overwrite the preset with: /usr/bin/bcompare %1% %2% -lefttitle='%3%' -righttitle='%4%'
  4. Merge : overwrite the preset with: /usr/bin/bcompare %1% %2% %a% -mergeoutput=%o% -lefttitle='%4%' -righttitle='%5%' -centertitle='%3%'

AnkhSVN

  1. Open Visual Studio.
  2. Select Options from the Tools menu.
  3. Select Source Control | Subversion User Tools.
  4. For the Diff and Merge entries, select Beyond Compare from the dropdown.

CA Harvest Software Change Manager

  1. Open the Workbench.
  2. Select Options from the Tools menu.
  3. Switch to the Merge Tool tab in the Options dialog.
  4. Select 'Beyond Compare' in the ToolName drop-down.
  5. Enter the complete path to your BComp.exe in the Compare, 2-way Merge, and 3-way Merge fields:

    Compare

    BComp.exe /readonly $(File1) $(File2)

    2-way Merge

    BComp.exe $(TrunkFile) $(BranchFile) /mergeoutput=$(ResultsFile)

    3-way Merge

    BComp.exe $(TrunkFile) $(BranchFile) $(AncestorFile) $(ResultsFile)

ClearCase

  1. Go into the 'C:Program FilesIBMRationalSDLCClearCaselibmgrs' folder.
  2. Create a backup of the file named 'map'.
  3. Edit 'map' and edit the following lines to point to Beyond Compare:
    text_file_delta xcompare C:Program FilesBeyond Compare 4BComp.exe
    text_file_delta xmerge C:Program FilesBeyond Compare 4BComp.exe

Make the same change to lines beginning with _html, _xml, _html2, _xml2 to use Beyond Compare for HTML and XML comparisons.

BC version 2

Gitkraken svn

For BC2, only change the xcompare line of the map file. Overriding compare, merge, and xmerge is not supported. A helper that improves BC2's support is available here.

ClearCase Remote Client

CCRC 7.1.1+

Reference: IBM KB
  1. Go to Window | Preferences dialog. Then select ClearCase Remote Client | Integration | Compare/Merge | Manage Providers
  2. For Provider Name, enter the path to Beyond Compare's install directory and bcomp.exe
  3. Diff: For Supports Compare Operations add: %contribs% /vcs1='%filename1%' /vcs2='%filename2%'
  4. Merge : For Supports Merge Operations add: %contrib1% %contrib2% %base% /mergeoutput='%merge_out%'
  5. Click Apply, then New to add to the Providers list
  6. Navigate to ClearCase Remote Client | Integration | Compare/Merge (up one level) to override the CCRC Integrated (UTF-8) as the default diff/merge and set to bcomp.exe

CCRC Older versions

  1. Locate the plugins folder, which will contain a specific version named subfolder. Examples:
    • C:Program FilesIBMRationalClearCase701CCRCpluginscom.ibm.rational.clearcase.compare_merge.win32.x86_7.0.1.D061004
    • C:Program FilesIBMIMSharedpluginscom.ibm.rational.clearcase.compare_merge.win32.x86_7.1.1.v201007070751
    • Note that the version number in path is subject to change.
  2. Copy C:Program FilesBeyond Compare 4bcomp.exe into the folder.
  3. Move ccrc_cleardiff.exe, ccrc_cleardiffmrg.exe, ccrc_worddiffmrg.exe and ccrc_xmldiffmrg.exe to a backup folder.
  4. Make 4 copies of bcomp.exe and rename them to ccrc_cleardiff.exe, ccrc_cleardiffmrg.exe, ccrc_worddiffmrg.exe and ccrc_xmldiffmrg.exe.
  5. Change 'CCRC Integrated (UTF-8)' to 'ClearCase External' under Preferences | CCRC | Integration | Compare_Merge.

CVS

CVS does not support external diff or merge tools.

Dimensions CM / PVCS / Serena

BC version 3 or 4

  1. Navigate to the Dimensions / PVCS install folder and find the file pvcsmerge.exe and rename it to pvcsmerge.exe.exe.
  2. Copy bcomp.exe from C:Program FilesBeyond Compare 4 into the Dimensions folder and rename it to pvcsmerge.exe.
Svn

In Dimensions CM 10 you can edit your native.properties file instead. The integration isn't as complete in that case, so file format/rules matching don't work correctly and folder comparisons aren't supported.

BC version 3 or 4 with extended functionality

Download PVCSmerge.zip and follow the PVCSmerge.txt instructions included in the zip file. Tested with PVCS 6.8 and 8.0 as well as Dimensions 8, 9 and 10.

Adds support for comparison of binary files (e.g. Word documents) and archives (Zip).

BC version 2

Follow the instructions above, but instead of using BComp.exe use the copy of pvcsmerge.exe in pvcsmergev8.zip for PVCS 6.8, 8.0, and Merant Dimensions 8, or in pvcsmerge75.zip for PVCS 7.5.

Git for Linux

BC version 3 or 4

Git 1.8 and newer

Diff

Confirm that 'bcompare' can be launched from Terminal. Then in a console window enter:
$ git config --global diff.tool bc3
$ git config --global difftool.bc3.trustExitCode true

To launch a diff using Beyond Compare, use the command
git difftool file.ext

Merge

Confirm that 'bcompare' can be launched from Terminal. Then enter the following:
git config --global merge.tool bc3
git config --global mergetool.bc3.trustExitCode true

To launch a 3-way merge using Beyond Compare, use the command
git mergetool file.ext


Git 1.7.x and older

(Instructions vary depending on Git version)

Diff

  1. Create a shell script file 'git-diff-wrapper.sh' with the followingcontent:
    #!/bin/sh
    # diff is called by git with 7 parameters:
    # path old-file old-hex old-mode new-file new-hex new-mode
    '<path_to_bc3_executable>' '$2' '$5' | cat
  2. In a console window enter the command:
    $ git config --global diff.external <path_to_wrapper_script>

3-way Merge

In a console window enter the following three commands:
$ git config --global merge.tool bc3
$ git config --global mergetool.bc3.cmd '/usr/bin/bcompare $LOCAL
$REMOTE $BASE $MERGED'
$ git config --global mergetool.bc3.trustExitCode true

2-way Merge

In a console window enter the following three commands:
$ git config --global merge.tool bc3
$ git config --global mergetool.bc3.cmd '/usr/bin/bcompare $LOCAL
$REMOTE -savetarget=$MERGED'
$ git config --global mergetool.bc3.trustExitCode true

Git for Windows

BC version 3 or 4

Diff

At a Windows command prompt, enter the commands:
git config --global diff.tool bc
git config --global difftool.bc.path 'c:/Program Files/Beyond Compare 4/bcomp.exe'

Note: For Git versions older than 2.2 (git --version) replace 'bc' with 'bc3' in the above instructions.

3-way Merge

At a Windows command prompt, enter the commands:
git config --global merge.tool bc
git config --global mergetool.bc.path 'c:/Program Files/Beyond Compare 4/bcomp.exe'

Note: For Git versions older than 2.2.0 (git --version) replace 'bc' with 'bc3' in the above instructions.

Launching Diffs and Merges

File Diff:
git difftool filename.ext

Folder Diff:
git difftool --dir-diff

3-way Merge:
git mergetool filename.txt

Advanced Settings

To disable the 'Launch 'bc3' [Y/n]?' prompt, run the command:
git config --global difftool.prompt false

Git's default settings retain merge files with *.orig extensions after a successful merge. To disable this safety feature and automatically delete *.orig files after a merge, run the command:
git config --global mergetool.keepBackup false

Git Integration for Eclipse (EGit)

Git integration for Eclipse (EGit) does not support external diff and merge tools.
Eclipse bug tracker: Bug 356832 - Allow use of external mergetool.

GitHub Desktop

GitHub Desktop does not support external diff and merge tools.
GitHub feature request: Open with external diff tool #1765.

Git Extensions

BC version 3 or 4

Diff

  1. Select Settings from the Tools menu.
  2. Select Git Config.
  3. Select 'BeyondCompare4' from the Difftool drop down.
  4. Ensure that Path to difftool field contains:
    C:/Program Files/Beyond Compare 4/BComp.exe
  5. Ensure Difftool command field contains:
    'C:/Program Files/Beyond Compare 4/BComp.exe' '$LOCAL' '$REMOTE'

Merge

  1. Select Settings from the Tools menu.
  2. Select Git Config.
  3. Select 'BeyondCompare4' from the Mergetool drop down.
  4. Ensure that Path to mergetool field contains:
    C:/Program Files/Beyond Compare 4/BComp.exe
  5. Ensure Mergetool command field contains:
    'C:/Program Files/Beyond Compare 4/BComp.exe' '$LOCAL' '$REMOTE' '$BASE' '$MERGED'

Git Fork

BC version 3 or 4

Diff

  1. Select Preferences from the File menu.
  2. Select Integration.
  3. Select 'Custom' from the Diff Tool drop down.
  4. Ensure that Diff Tool Path field contains:
    C:/Program Files/Beyond Compare 4/BComp.exe
  5. Ensure Arguments field contains:
    '$LOCAL' '$REMOTE'

Merge

  1. Select Preferences from the File menu.
  2. Select Integration.
  3. Select 'Custom' from the Merger drop down.
  4. Ensure that Merger Path field contains:
    C:/Program Files/Beyond Compare 4/BComp.exe
  5. Ensure Arguments field contains:
    '$LOCAL' '$REMOTE' '$BASE' '$MERGED'

KDESVN

  1. In KDESVN Choose Configure KDESVN from the Settings menu.
  2. Select Diff & Merge.
  3. Check Use external diff display.
  4. In the External diff display edit, use:
    bcompare -readonly %1 %2
  5. In the External merge program edit, use:
    bcompare %s1 %s2 %t
  6. In the External resolver program edit, use:
    bcompare %n %m %o %t

Mercurial / TortoiseHg

BC version 3 with TortoiseHg 2.0.2 and newer

BC version 4 with TortoiseHg 3.1 and newer

Diff

  1. Launch TortoiseHG Workbench.
  2. Under the File menu go to Settings.
  3. Select TortoiseHg.
  4. Set Visual Diff Tool to beyondcompare4 using the dropdown.

3-way Merge

  1. Launch TortoiseHG Workbench.
  2. Under the File menu go to Settings.
  3. Select TortoiseHg
  4. Set the Three-way Merge Tool to beyondcompare4 using the dropdown.

Older versions of Mercurial

To configure Mercurial you need to edit the file %USERPROFILE%Mercurial.ini or $HOME/.hgrc. Add the following lines, using existing INI sections if they already exist:

Diff

[extensions]
extdiff =
[extdiff]
cmd.bcomp = C:Program FilesBeyond Compare 4BComp.exe
opts.bcomp = /ro
[tortoisehg]
vdiff = bcomp

Once set up you can compare revisions from the command line using
hg bcomp -r <rev1> [-r <rev2>] [<filename>]

3-way Merge

[merge-tools]
bcomp.executable = C:Program FilesBeyond Compare 4BComp.exe
bcomp.args = $local $other $base $output
bcomp.priority = 1
bcomp.premerge = True
bcomp.gui = True
[ui]
merge = bcomp

MKS Integrity / PTC Integrity

Diff

  1. Start MKS Source Integrity.
  2. Go to Tools | Preferences | DiffTool.
  3. Select Custom Command.
  4. Enter the command:
    'C:Program FilesBeyond Compare 4BComp.exe' /title1='{1}' /title2='{2}' '{3}' '{4}'

3-way Merge

Use this for the merge tool command line:
'C:Program FilesBeyond Compare 4BComp.exe' /title1='{1}' /title2='{2}' /title3='{0}' '{5}' '{6}' '{4}' '{7}'

2-way Merge

Use this for the merge tool command line:
'C:Program FilesBeyond Compare 4BComp.exe' /title1='{1}' /title2='{2}' '{5}' '{6}' /savetarget='{7}'

NetBeans

  1. Select Options from the Tools menu.
  2. Select Miscellaneous.
  3. Go to the Diff tab.
  4. Select External Diff.
  5. Command: C:Program FilesBeyond Compare 4BComp.exe {0} {1}

Once configured, selecting Team | Local History | Show Local History will launch a diff in Beyond Compare.

Perforce

P4V (The Perforce Visual Client)

  1. Choose Preferences from the Edit menu.
  2. Switch to the Diff tab.
  3. Change the Default Diff Application option to 'Other application'.
  4. Enter the path to BComp.exe in the Location edit.
  5. Switch to the Merge tab.
  6. Change the Default merge application to 'Other application'.
  7. Enter the path to BComp.exe in the Location edit.
  8. In the Arguments edit, enter:
    %1 %2 %b %r

P4Win (The Perforce Windows Client)

  1. Choose Options from the Settings menu.
  2. Select Files > Diff.
  3. Select User supplied diff application.
  4. Browse to BComp.exe.
  5. Check Options args and enter:
    /lefttitle='%L' /righttitle='%R' %1 %2
  6. Select Files > Merge.
  7. Select User supplied merge application.
  8. Browse to BComp.exe.
  9. Check Optional args and enter:
    /vcsleft='%T' /vcsright='%Y' %2 %3 %1 %4

P4 (The Perforce Command Line Client)

  1. Add two environmental variables:
    P4DIFF=C:Program FilesBeyond Compare 4BComp.exe
    P4MERGE=C:Program FilesBeyond Compare 4BCompP4Merge.bat
  2. Create a file named BCompP4Merge.bat in your Beyond Compare install folder with the contents: 'C:Program FilesBeyond Compare 4BComp' %2 %3 %1 %4

Plastic SCM

Diff

  1. Choose Diff tools from the Preferences menu.
  2. Select $text, choose Edit.
  3. Add the command line:
    'C:Program FilesBeyond Compare 4BComp.exe'@sourcefile' '@destinationfile' /lefttitle='@sourcesymbolic' /righttitle='@destinationsymbolic'

Merge

  1. Choose Merge tools from the Preferences menu.
  2. Select $text, choose Edit.
  3. Add the command line:
    'C:Program FilesBeyond Compare 4BComp.exe'/title1='@sourcesymbolic' /title2='@destinationsymbolic' /title3='@basesymbolic'@sourcefile' '@destinationfile' '@basefile' '@output'

Rational Synergy

Java Client, Diff

  1. Create the batch file: C:Program FilesBeyond Compare 4bc4_comp.bat
  2. In the batch file, enter: 'C:Program FilesBeyond Compare 4BComp.exe' %1 %2 /lefttitle=%3 /righttitle=%4
  3. Backup the file 'C:Program FilesIBMRationalSynergy7.1etcccm.properties'.
  4. In ccm.properties, edit the compare line: windows.tool.compare.ascii = 'C:Program FilesBeyond Compare 4bc4_comp.bat' '%file1' '%file2' '%file1_label' '%file2_label'

Java Client, 3-way Merge

  1. Create the batch file: C:Program FilesBeyond Compare 4bc4_merge.bat
  2. In the batch file, enter: 'C:Program FilesBeyond Compare 4BComp.exe' %1 %2 %3 %4 /lefttitle=%5 /righttitle=%6 /centertitle=%7 /outputtitle=%4
  3. Backup the file 'C:Program FilesIBMRationalSynergy7.1etcccm.properties'.
  4. In ccm.properties, edit the merge line: windows.tool.merge.ascii = 'C:Program FilesBeyond Compare 4bc4_merge.bat' '%file1' '%file2' '%ancestor' '%outfile' '%file1_label' '%file2_label' '%ancestor_label'
We have reports that some versions of the Java client require double slash characters in the file path. For example: windows.tool.compare.ascii = 'C:Program FilesBeyond Compare 4bc4_comp.bat' '%file1' '%file2' '%file1_label' '%file2_label'

Classic Client, Diff

  1. Close the Synergy application.
  2. Create the batch file: C:Program FilesBeyond Compare 4bc4_comp.bat
  3. In the batch file, enter: 'C:Program FilesBeyond Compare 4BComp.exe' %1 %2 /lefttitle=%3 /righttitle=%4
  4. Navigate into your %userprofile% directory (type %userprofile% in explorer address bar if you are unsure where this is).
  5. Backup the file named 'ccm.ini'.
  6. Edit the compare line in ccm.ini: compare_cmd = 'C:Program FilesBeyond Compare 4bc4_comp.bat' '%file1' '%file2' '%file1_label' '%file2_label'

Classic Client, 3-way Merge

  1. Close the Synergy application.
  2. Create the batch file: C:Program FilesBeyond Compare 4bc4_merge.bat
  3. In the batch file, enter: 'C:Program FilesBeyond Compare 4BComp.exe' %1 %2 %3 %4 /lefttitle=%5 /righttitle=%6 /centertitle=%7 /outputtitle=%4
  4. Navigate into your %userprofile% directory (type %userprofile% in explorer address bar if you are unsure where this is).
  5. Backup the file named 'ccm.ini'.
  6. Edit the merge line in ccm.ini: merge_cmd = 'C:Program FilesBeyond Compare 4bc4_merge.bat' '%file1' '%file2' '%ancestor' '%outfile' '%file1_label' '%file2_label' '%ancestor_label'

RoboHelp

Adobe RoboHelp can be configured to interact with a Version Control System and allows an External Diff tool to be defined. To define BC as the difftool:

  1. Launch RoboHelp HTML.
  2. Go to Tools | Options.
  3. Select the Version Control section.
  4. In the SharePoint Settings area, set Path to:
    C:Program FilesBeyond Compare 4BComp.exe
  5. For Arguments, enter:
    %1 %2
  6. Set the sub-options as appropriate for your VCS environment.

Roundtable TSMS

  1. Go into the 'C:Program FilesRoundTablertbp' folder.
  2. Create a backup of the file named 'Rtb_vcom.p'.
  3. Edit 'Rtb_vcom.p' and change the line:
    ASSIGN Mexe = SEARCH('visdiff/visdiff.exe').
    to:
    ASSIGN Mexe = SEARCH('C:Progra~1Beyond~1bcomp.exe').

SmartGit

Diff

Gitkraken Svn To Git

  1. Select Edit | Preferences.
  2. Go to Tools > Diff Tools.
  3. Click Add.
  4. File Pattern: *
  5. Select External diff tool.
  6. Command: C:Program FilesBeyond Compare 4bcomp.exe
  7. Arguments: /readonly /lefttitle='${leftTitle}' /righttitle='${rightTitle}' '${leftFile}' '${rightFile}'

Merge

  1. Select Edit | Preferences.
  2. Go to Tools > Conflict Solvers.
  3. Click Add.
  4. File Pattern: *
  5. Select External Conflict Solver.
  6. Command: C:Program FilesBeyond Compare 4bcomp.exe
  7. Arguments: '${leftFile}' '${rightFile}' '${baseFile}' /mergeoutput='${mergedFile}'

SourceAnyWhere for VSS

  1. Select Tools | Options. Go to the External Programs tab.
  2. Application for diff/merge:
    C:Program FilesBeyond Compare 4bcomp.exe
  3. Arguments for diff files:
    /readonly /title1='%FIRST_LABEL%' /title2='%SECOND_LABEL%'%FIRST_FILE%' '%SECOND_FILE%'
  4. Arguments for diff folders:
    '%FIRST_DIR%' '%SECOND_DIR%'
  5. Arguments for Two-way merge:
    /leftreadonly /title1='%FIRST_LABEL%' /title2='%SECOND_LABEL%'%FIRST_FILE%' '%SECOND_FILE%'

Linux

In some versions of the Linux application, it may be necessary to define the path to bcompare with the arguments.

  1. Application for diff/merge:
    /usr/bin/bcompare
  2. Arguments for diff files:
    /usr/bin/bcompare -readonly '%FIRST_FILE%' '%SECOND_FILE%'
  3. Arguments for diff folders:
    /usr/bin/bcompare '%FIRST_DIR%' '%SECOND_DIR%'

SourceGear Vault

Diff

  1. Choose Options from the Tools menu.
  2. Select Diff / Merge.
  3. Under Diff, enter the path to BComp.exe for the Program setting.
  4. In the Arguments edit, enter:
    '%LEFT_PATH%' '%RIGHT_PATH%' /ro /title1='%LEFT_LABEL%' /title2='%RIGHT_LABEL%'

3-way Merge

  1. Choose Options from the Tools menu.
  2. Select Diff / Merge.
  3. Under Merge, enter the path to BComp.exe for the Program setting.
  4. In the Arguments edit, enter:
    '%WORKING_PATH%' '%OTHER_PATH%' '%BASELINE_PATH%' '%DEST_PATH%' /title1='%WORKING_LABEL%' /title2='%OTHER_LABEL%' /title4='%DEST_LABEL%'

2-way Merge

Use the same steps as above, but set the Arguments setting to:
'%WORKING_PATH%' '%OTHER_PATH%' /title1='%WORKING_LABEL%' /title2='%OTHER_LABEL%' /savetarget='%DEST_PATH%'

SourceOffSite

  1. Choose Options from the Windows Client's Tools menu.
  2. Switch to the External Programs panel.
  3. Enter the path to BComp.exe in the Application for comparing files, Application for comparing folders and Application for merging files edits.

Beyond Compare 1.9 is the default external difference utility in SourceOffSite Collaborative Edition. To upgrade to Beyond Compare 4 follow the instructions above.

SourceTree

Diff

  1. Choose Options from the Tools menu.
  2. Switch to the Diff tab.
  3. Set the External Diff tool dropdown to Beyond Compare.

3-way Merge

  1. Choose Options from the Tools menu.
  2. Switch to the Diff tab.
  3. Set the External Merge tool dropdown to Beyond Compare.

StarTeam

Diff

  1. Choose Personal Options from the Tools menu.
  2. Switch to the Files panel.
  3. If it's present, click the 'Alternate Applications' button.
  4. Check the Comparison Utility checkbox.
  5. Enter the path to BComp.exe in the edit.
  6. In the Options edit enter:
    $file1 $file2

3-way Merge

  1. Follow steps 1-5 above, but check the Merge Utility checkbox in step 4.
  2. In the Options edit enter:
    $usertip $branchtip $basefile $resultfile

2-way Merge is not supported because $resultfile is not expanded if used as an argument to /savetarget=.

Subversion

Windows

Diff

  1. Go into the Beyond Compare installation folder (eg, C:Program FilesBeyond Compare 4).
  2. Create a batch file named 'bc4svn.bat' containing:
    call '%~dp0bcomp.exe' '%6' /title1=%3 '%7' /title2=%5
    IF %errorlevel%0 goto ZERO
    EXIT /B 1
    :ZERO
    EXIT /B 0
  3. Go into Subversion's per-user configuration area, typically C:UsersusernameAppDataRoamingSubversion.
  4. Edit 'config' and change the following lines:
    # [helpers]
    # diff-cmd = diff_program (diff, gdiff, etc.)
    to:
    [helpers]
    diff-cmd = 'C:Program FilesBeyond Compare 4bc4svn.bat'

Merge

  1. Go into the Beyond Compare installation folder (eg, C:Program FilesBeyond Compare 4).
  2. Create a batch file named 'bc4mer.bat' containing:
    call '%~dp0bcomp.exe' '%2' '%3' '%1' '%4'
    IF %errorlevel%0 goto ZERO
    EXIT /B 1
    :ZERO
    EXIT /B 0
  3. Go into Subversion's per-user configuration area, typically C:Documents and Settings<username>Application DataSubversion.
  4. Edit 'config' and change the following lines:
    # [helpers]
    # merge-tool-cmd = merge_program
    to:
    [helpers]
    merge-tool-cmd = 'C:Program FilesBeyond Compare 4bc4mer.bat'

Cygwin

Instead of using a batch file, create a file named 'bc.sh' with the following line:
'$(cygpath 'C:Progra~1Beyond~1bcomp.exe')' `cygpath -w '$6'` `cygpath -w '$7'` /title1='$3' /title2='$5' /readonly

Linux

Diff

Create a file named /usr/bin/bcdiff.sh and allow execute permissions (chmod +x). Add the following lines:
/usr/bin/bcompare '$6' '$7' -title1='$3' -title2='$5' -readonly
exit 0

Edit '$HOME/.subversion/config' and add the line 'diff-cmd = /usr/bin/bcdiff.sh' in [Helpers].

Merge

Create a file named /usr/bin/bcmerge.sh and allow execute permissions (chmod +x). Add the following line:
/usr/bin/bcompare '$2' '$3' '$1' '$4'

Edit '$HOME/.subversion/config' and add the line 'merge-tool-cmd = /usr/bin/bcmerge.sh' in [Helpers].

Surround SCM

Diff

  1. Open User Options.
  2. Go to the Diff/Merge section.
  3. Add or edit an entry for File Type 'All other text files', with Diff/Merge set to Diff.
  4. Enter selected application: 'C:Program FilesBeyond Compare 4bcomp.exe' '%1' '%2' and click OK.

3-way Merge

  1. Open User Options.
  2. Go to the Diff/Merge section.
  3. Add or edit an entry for File Type 'All other text files', with Diff/Merge set to Merge.
  4. Enter selected application: 'C:Program FilesBeyond Compare 4bcomp.exe' '%1' '%2' '%3' /mergeoutput='%2' /automerge /reviewconflicts and click OK.

2-way Merge

  1. Open User Options.
  2. Go to the Diff/Merge section.
  3. Add or edit an entry for File Type 'All other text files', with Diff/Merge set to Merge.
  4. Enter selected application: 'C:Program FilesBeyond Compare 4bcomp.exe' '%1' '%2' /mergeoutput='%2' /reviewconflicts and click OK.

Team Coherence

  1. Choose Options from the Tools menu.
  2. Switch to the Difference Viewers tab.
  3. Enter the path to BComp.exe in the Application edit.
  4. Enter /fv '$LF' /title1='$LD' '$RF' /title2='$RD' in the Parameters edit.

TortoiseCVS

Diff, 2-way Merge (3-way merge not supported)

  1. Start Preferences application.
  2. Switch to the Tools tab.
  3. Diff application: C:Program FilesBeyond Compare 4BComp.exe
  4. 2-way diff parameters: /readonly '%1' '%2'
  5. Merge application: C:Program FilesBeyond Compare 4BComp.exe
  6. 2-way merge parameters: /leftreadonly '%mine' '%yours'

TortoiseHg

See Mercurial / TortoiseHG.

TortoiseGit

Diff

  1. Launch TortoiseGit | Settings
  2. Switch to the Diff Viewer section under External Programs
  3. Change the radio buttons from TortoiseMerge to External.
  4. In the path edits, enter:
    'C:Program FilesBeyond Compare 4BComp.exe' %base %mine /title1=%bname /title2=%yname /leftreadonly

3-way Merge

  1. Launch TortoiseGit | Settings
  2. Switch to the Merge Tool section under External Programs
  3. Change the radio buttons from TortoiseMerge to External.
  4. In the path edits, enter:
    'C:Program FilesBeyond Compare 4BComp.exe' %mine %theirs %base %merged /title1=%yname /title2=%tname /title3=%bname /title4=%mname

TortoiseSVN

Diff

  1. Select Settings from Explorer's TortoiseSVN submenu.
  2. Switch to the Diff Viewer tab.
  3. Change the radio buttons from TortoiseMerge to External.
  4. In the path edits, enter:
    'C:Program FilesBeyond Compare 4BComp.exe' %base %mine /title1=%bname /title2=%yname /leftreadonly

To use Beyond Compare for image comparisons either replace the file C:Program FilesTortoiseSVNbinTortoiseIDiff.exe with a copy of BComp.exe, or click the Advanced button on the Diff Viewer tab and add each image type's extension with the same command line as above.

3-way Merge

  1. Select Settings from Explorer's TortoisSVN submenu.
  2. Switch to the Merge Tool tab.
  3. Change the radio buttons from TortoiseMerge to External.
  4. In the path edits, enter:
    'C:Program FilesBeyond Compare 4BComp.exe' %mine %theirs %base %merged /title1=%yname /title2=%tname /title3=%bname /title4=%mname

2-way Merge

Use the same steps as above, but use the command line:
'C:Program FilesBeyond Compare 4BComp.exe' %mine %theirs /savetarget=%merged

Tower (Git)

  1. Open Tower's preferences dialog on the Git Config Tab.
  2. Set the Diff Tool drop-down to Beyond Compare.
  3. Set the Merge tool drop-down to Beyond Compare.

Visual SourceSafe 2005

Diff

  1. Open the Visual SourceSafe Explorer.
  2. Select Options from the Tools menu.
  3. Switch to the Custom Editors tab in the SourceSafe Options dialog.
  4. Select File Difference in the Operation drop-down.
  5. Enter '.*' in the File Extension edit.
  6. Enter this in the Command Line: edit:
    'C:Program FilesBeyond Compare 4bcomp.exe' %1 %2
  7. Click the Add button.

Merge

  1. Open the Visual SourceSafe Explorer.
  2. Select Options from the Tools menu.
  3. Switch to the Custom Editors tab in the SourceSafe Options dialog.
  4. Select File Merge in the Operation drop-down.
  5. Enter '.*' in the File Extension edit.
  6. Enter this in the Command Line edit:
    'C:Program FilesBeyond Compare 4bcomp.exe' %1 %2 /savetarget=%4
  7. Click the Add button.

Visual SourceSafe 6.0 and earlier do not support external difference utilities.

Visual Studio - Git

Gitkraken
  1. Open Visual Studio.
  2. Select Options from the Tools menu.
  3. Select Plug-In Selection under the Source Control branch of the left-side tree control.
  4. Select Git under Current source control plug-in on the right-hand pane.
  5. After starting a project in a Git repository, edit the config file in the .git folder in the project folder.
  6. Change the config file to reflect the following changes:
    [diff]
    tool = bc4
    [difftool 'bc4']
    cmd = 'C:Program FilesBeyond Compare 4BComp.exe' '$LOCAL' '$REMOTE'
    [merge]
    tool = bc4
    [mergetool 'bc4']
    cmd = 'C:Program FilesBeyond Compare 4BComp.exe' '$REMOTE' '$LOCAL' '$BASE' '$MERGED'

Visual Studio - Team Foundation Server (TFS)

Diff

  1. In Visual Studio Choose Options from the Tools menu.
  2. Expand Source Control in the treeview.
  3. Click Visual Studio Team Foundation Server in the treeview.
  4. Click the Configure User Tools button.
  5. Click the Add button.
  6. Enter '.*' in the Extension edit.
  7. Choose Compare in the Operation combobox.
  8. Enter the path to BComp.exe in the Command edit.
  9. In the Arguments edit, use:
    %1 %2 /title1=%6 /title2=%7

3-way Merge

  1. Follow steps 1-6 above.
  2. Choose Merge in the Operation combobox.
  3. Enter the path to BComp.exe in the Command edit.
  4. In the Arguments edit, use:
    %1 %2 %3 %4 /title1=%6 /title2=%7 /title3=%8 /title4=%9

Gitkraken Svn

2-way Merge

Use the same steps as the 3-way merge above, but use the command line:
%1 %2 /savetarget=%4 /title1=%6 /title2=%7

Visual Studio - Visual SourceSafe 2005

Supported for 'Microsoft Visual SourceSafe' plug-in. The 'Microsoft Visual SourceSafe (Internet)' plug-in does not support external diff tools.

  1. Open Visual Studio 2015.
  2. Select Options from the Tools menu.
  3. Select Plug-In Settings under the Source Control branch of the left-side tree control.
  4. Select Visual SourceSafe under Plug-In Settings on the right-hand pane.
  5. Press the Advanced button.
  6. Select the Custom Editor tab in the 'SourceSafe Options' pane.
  7. Select File Difference in the Operation drop-down.
  8. Enter '.*' in the File Extension edit.
  9. Enter this in the Command Line edit:
    'C:Program FilesBeyond Compare 4bcomp.exe' %1 %2
  10. Click the Add button and close all dialog boxes.

End of Support

Microsoft ended support for Visual SourceSafe in 2017. Scooter Software recommends migrating from SourceSafe to an actively supported version control solution such as Git, Team Foundation Server, etc.

Limitations

A SourceSafe diff launched from Visual Studio 2015 opens as a modal window, blocking interaction with Visual Studio until the diff window is closed. This SourceSafe limitation affects both SourceSafe's built-in diff tool and Beyond Compare.


Pricing FAQs

How much is GitKraken?

GitKraken offers three pricing tiers, all with varying costs.

  • GitKraken: Free
  • GitKraken Pro: $4.08 per user/month
  • GitKraken Enterprise: $8.25 per user/month

The GitKraken Suite is the best value for the GitKraken Git GUI, GitKraken Boards and GitKraken Timelines.

Is GitKraken free for commercial use?

No, GitKraken is not free for commercial use.

The free GitKraken Git GUI can be used with publicly-hosted repositories. If you are working with privately-hosted repositories, you will need a paid GitKraken license.

Does GitKraken install Git?

No, GitKraken does not require you to install Git on your machine.

Can GitKraken be installed on multiple machines?

Yes, one user license allows you to install GitKraken on multiple machines and operating systems.

Are there GitKraken student discounts available?

Yes, students can receive GitKraken Pro free through the GitHub Student Developer Pack.

Are there discounts for educational institutions or teachers?

Yes, teachers can receive GitKraken Pro free through the GitHub Teacher Toolbox.

Universities may also request GitKraken Stand-Alone if your educational institution has a computer lab.

What is the refund policy for GitKraken?

You may request a full refund within 2 weeks of your trial expiration or your GitKraken renewal date.

Is there a GitKraken trial version?

Yes, the free download of GitKraken comes with a 7-day trial of all the paid features and can be extended by 21 days if you create an Organization.

Is GitKraken compatible with MacOS, Linux, and Windows?

Yes, GitKraken is a cross-platform Git client that provides a nearly identical experience across operating systems. One user license allows you to install GitKraken on multiple machines and operating systems.

Developers can work together using GitKraken across platforms, allowing individual team members the ability to choose the OS they prefer, and are likely most productive on, without affecting team collaboration.

What is GitKraken Enterprise?

GitKraken Enterprise is a popular plan designed to scale with organizations of any size, especially teams larger than 10-25 members. The capabilities of this plan make it easier to manage user licenses and enterprise authentication methods as your teams grow.

In addition to all of the features included in GitKraken Pro, GitKraken Enterprise offers flexible license management options including: cloud-based accounts, stand-alone clients with user keys, and self-hosted accounts with LDAP.