Skip to content

VCS Integration

LemonTree can be seamlessly integrated into existing versioning systems, such as Subversion, Git or PTC. This enables the centrally and automatic management of model versions. It also enables parallel editing of models in a team, as has for years been a common approach when editing source code. LemonTree for Enterprise Architect is referred to as a Diff & Merge Tool for VCSs as soon as a model is checked into the central repository.

Command Line Options

LemonTree.exe \[options\]

Command Line Options:

--diff
        interactive diff mode, used to diff certain models

--merge=auto
        automated merge mode. Merges the files when there are no conflicts, starts the UI when there are.

--merge=visual
        visual merge mode. Always starts the UI giving the user an opportunity to override the default merge.

-b, --base=
        the common base version of the models
        other common names $BASE 

-t, --theirs=
        the 'theirs' version of the model, often called 'A'
        other common name: $REMOTE

-m, --mine=
        the 'mine' version of the model, often called 'B'
        other common name: $LOCAL

-o, --out=
        the resulting model, will be overwritten if it exists.
        other common name: $MERGED
 
-w, --wait
        when performing an automatic merge, waits for user confirmation after success/failure when LemonTree didn't start the UI.

Examples

Merge

LemonTree.exe --merge=auto --base="C:\tmp\xx0.eap" --mine="C:\tmp\xx1.eap" --theirs="C:\tmp\xx2.eap" --out="C:\tmp\merged.eap"

Explanation: Attempts to merge xx1.eap with xx2.eap, writing the output to merged.eap. Opens interactive mode if there are conflicts.

3-way comparison

LemonTree.exe --diff --base="C:\tmp\xx0.eap" --mine="C:\tmp\xx1.eap" --theirs="C:\tmp\xx2.eap"

Explanation:  Does a three-way compare of xx0.eap, xx1.eap and xx2.eap.

2-way comparison

LemonTree.exe --diff  --mine="C:\tmp\xx1.eap" --theirs="C:\tmp\xx2.eap"

Explanation: Does a two-way compare of xx1.eap and xx2.eap.  Note that 'base' is set to the same model als 'theirs'.

Using LemonTree with SVN

If you have already installed TortoiseSVN, the corresponding configurations are automatically added when installing LemonTree.

Using LemonTree with Git

If you have already installed TortoiseGit or SmartGit, the corresponding hooks are automatically added when installing LemonTree.

Other Versioning Control Systems

If you want to configure LemonTree as external diff & merge tool, please refer to the appropriate sub-page for your used Git Tool(s).

Click here for more information