SmartSVN Integration (Version 2.6.1 or newer)
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:
- SmartSVN, Version 11.0.4: Download Archive
- LemonTree Version 1.6
Diff Tool Integration of LemonTree for EAP and EAPX files
- In the menu "Edit → Preferences" is a category "Tools"
- Select the subelement "File Compare" in the category "Tools"
- Click "Add" and configure LemonTree as external diff tool like this:
To avoid typos here are the command and the arguments:
File Pattern: *.eap, *.eapx
Command: C:\Program Files\LieberLieber\LemonTree\LemonTree.Starter.exe
Arguments: diff --base=${leftFile} --mine=${rightFile} --theirs=${leftFile}
Conflict Solver integration of LemonTree for EAP and EAPX files
- In the menu "Edit → Preferences" is a category "Tools"
- Select the subelement "Conflict Solvers" in the category "Tools"
- Click "Add" and configure LemonTree as external conflict solver like this:
To avoid typos here are the command and the arguments:
Command: C:\Program Files\LieberLieber\LemonTree\LemonTree.Starter.exe
Arguments: merge --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:
- 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:
- 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