Skip to content

TortoiseSVN

If you have TortoiseSVN already installed on your machine, LemonTree is automatically configured as external diff & merge tool. So, when checking in EAP, EAPX, QEA, QEAX files into SVN, LemonTree is started when parallel changes have been performed. If these changes do not lead to a conflict, which need user interaction within LemonTree's GUI, LemonTree merges all changes in the background.

Installation order

The automatic integration only works, if TortoiseSVN is installed prior to LemonTree. Furthermore, if you install LemonTree and TortoiseSVN in a citrix based environment, make sure that both tools are deployed in the same container, as LemonTree needs access to the registry keys of TortoiseSVN.

If the automatic integration did not work or you installed LemonTree after TortoiseSVN, you can fix the integration by manually registering LemonTree as external diff and merge tool: Manually configure LemonTree as external Diff and Merge Tool

This process is described in the following:

Automatic Merge

When you have finished your work on your EAP file and you commit the changes, it might happen that this commit failed due to concurrent changes of another user:

Commit Failed

SVN forces you to update your working copy, because it is not up to date. Click on Update to proceed:

Update Needed

if there are parallel changes, SVN always reports a SVN conflict because it can not merge a binary file (EAP file) automatically with the standard SVN merge tool. The conflicting version and the base version are stored locally on your machine.

UpdateFinished

R175 File

Click on Edit conflicts to proceed:

Edit Conflicts

Now, LemonTree tries to merge the parallel versions automatically:

Merging

If conflicts are found between the parallel changes of your model i.e. the same element are concurrently changed, LemonTree can automatically merge the model. Click on OK to proceed:

Merged

If LemonTree detects a "real" conflict on the model level, the GUI of LemonTree is started and the contradicted changes are visualized giving the user the possibility of resolving the conflicts manually.

In the next step, mark the EAP file as resolved:

Mark as Resolved

Finally commit the merged model:

Commit Message

Manually configure LemonTree as external Diff and Merge Tool

If either the automatic configuration of LemonTree did not work or you installed LemonTree and TortoiseGit in the wrong order, you have two ways of fixing this:

Setup Repair

Run the LemonTree setup again and select "Repair":

repairSetup

Or navigate to the installed programs and start the Repair:

directRepair

Configure an external Diff and Merge Tool in the TortoiseGit Settings

Diff Viewer

  1. In any folder in the windows explorer, right-click and select TortoiseGit > Settings
  2. Select "Diff Viewer" and click the button "Advanced..."
  3. Click the button "Add..."
  4. Enter the following information:
    Filename, extension or mime-type: .eap
    External Program: C:\Program Files\LieberLieber\LemonTree\LemonTree.exe --diff --base=%base --mine=%mine --theirs=%base --bpath=%bpath --brev=%brev --ypath=%ypath --yrev=%yrev
  5. Repeat step 4 for the following file extensions:
    • .eapx
    • .qea (for EA versions >= 16)
    • .qeax (for EA versions >= 16)
  6. At the end, you should have in total 4 entries for .eap, .eapx, .qea, .qeax, each with the same external program configured:

DiffSettings

Merge Tool

  1. In any folder in the windows explorer, right-click and select TortoiseGit > Settings
  2. Select "Merge Tool" and click the button "Advanced..."
  3. Click the button "Add..."
  4. Enter the following information:
    Filename, extension or mime-type: .eap
    External Program: C:\Program Files\LieberLieber\LemonTree\LemonTree.exe --merge=auto --wait --base=%base --mine=%mine --theirs=%theirs --out=%merged
  5. Repeat step 4 for the following file extensions:
    • .eapx
    • .qea (for EA versions >= 16)
    • .qeax (for EA versions >= 16)
  6. At the end, you should have in total 4 entries for .eap, .eapx, .qea, .qeax, each with the same external program configured:

MergeSettings

Test the VCS Integration

There is a very easy way to test if the VCS integration is configured properly:

  1. Take any EA project file and duplicate it in the same folder
  2. Select both files, right-click and select TortoiseGit > Diff:

GitDiff

  1. If the configuration was done properly, LemonTree should pop up and indicate that no differences were found:

NoDiffFound

User Settings installer/script

This script is helpful for customers using dedicated users for software distribution.

Register Tortoise SVN Helper