Skip to content

SmartSVN Integration (Version 2.6 or older)

This guide helps you to configure SmartSVN in order to use LemonTree as a diff and merge tool.
Since there is no automatic integration in SmartSVN, you have to manually integrate LemonTree in SmartSVN.

To do so, make sure to install the minimum tool versions and follow the guide provided below.

Minimum tool versions

In order to configure LemonTree as external conflict solving tool, you will need at minimum:

Diff Tool Integration of LemonTree for EAP and EAPX files

  1. In the menu "Edit → Preferences" is a category "Tools"
  2. Select the subelement "File Compare" in the category "Tools"
  3. Click "Add" and add a new file extension with the following pattern:

    *.eap*

  4. Select the radio button „External diff tool“ and configure LemonTree as diff tool as follows:
    File Compare

    To avoid typos here are the command and the arguments:

Command: C:\Program Files\LieberLieber\LemonTree\LemonTree.exe

Arguments--diff --base=${leftFile} --mine=${rightFile} --theirs=${leftFile}

Conflict Solver integration of LemonTree for EAP and EAPX files

  1. In the menu "Edit → Preferences" is a category "Tools"
  2. Select the subelement "Conflict Solvers" in the category "Tools"
  3. Click "Add" and a new file extension with the following pattern:

    *.eap*

  4. Select the radio button „External Conflict Solver“ and configure LemonTree as Conflict Solver as follows:
    Conflict Solvers

To avoid typos here are the command and the arguments:

CommandC:\Program Files\LieberLieber\LemonTree\LemonTree.exe

Arguments--merge=auto --wait --out=${mergedFile} --mine=${leftFile} --theirs=${rightFile} --base=${baseFile}

Working with LemonTree in SmartSVN

Basically, you can work with Enterprise Architect models in SmartSVN, just as you are used to work with source code files.
However, there is a difference in merging EA model files, due to their binary format. 

How to compare and merge different revisions of a model is described below. 

Comparing different revisions of models

Comparing different models works like comparing text files or source files.
Whenever you click "Show Changes" (Ctrl + M) or double-click the changed file, LemonTree is started automatically and shows the requested diff.

Merging different revisions of models

When merging two different revisions of models SmartSVN will always come up with a conflicted file since binary files cannot be merged automatically.

After either clicking “Conflict Solver(Ctrl + S) or double-clicking the conflicted file, LemonTree starts automatically and tries to resolve the conflict with two possible outcomes:

A) LemonTree is able to merge automatically:

  • The message "LemonTree merged your models successfully" appears:
    Popup OK
  • Approve the message.

B) LemonTree is NOT able to merge automatically:

  • LemonTree GUI comes up, shows the conflicts/changes and waits for the user to manually merge the models. When clicking "Start Merge" LemonTree writes the merged model.
  • Optional:
    Review the written merged model. It's possible to make other decisions and merge the models again.
  • Close LemonTree.

When LemonTree has done its work, an additional step is necessary to tell SmartSVN that the conflict is resolved:

  • Right-Click on the conflicted file and select "Mark Resolved"
  • "Mark Resolved-Dialog" from SmartSVN:
    Mark Resolved
  • Choose the option „Leave as is“ (since the LemonTree merge has overwritten the file, it can be left as is)
  • Confirm with OK
  • Commit the change
  • Continue work as usual