RevtreePlugin enhancer for use with svnmerge
MergeEnhancer is a plugin for the RevtreePlugin: it analyses the properties that are added by the svnmerge tool and renders merge operations between the repository branches.
The plugin has been developed following a request of several RevtreePlugin users. I don't use the svnmerge tool myself, and the plugin is far from being completed. It is not longer maintained and should be considered in alpha stage.
It has been tested with a copy of the original http://trac.edgewall.org SVN repository.
How it works
(to be documented)
Build the plugin
As with any other plugin, download the plugin code, and build a plugin egg file. The MergeEnhancer plugin source code comes with the RevtreePlugin (see RevtreePlugin#Installation), but is not built within the RevtreePlugin egg.
To build the MergeEnhancer plugin, change the current directory to the
enhancers and build the egg file:
$ cd revtreeplugin/0.11/enhancers/mergeenhancer $ python setup.py bdist_egg
then copy the egg file to the global plugin directory or the project plugin directory
Enable the plugin
From the WebAdmin plugin interface or from your
file, enable the MergeEnhancer plugin.
The MergeEnhancer plugin appears as
mergeenhancer.enhancer in the plugin
Obviously the revtree is also enabled, which means that your
trac.ini file should
look like the following snippet:
[components] revtree.* = enabled mergeenhancer.enhancer.mergeenhancer = enabled
The MergeEnhancer plugin can be safely used in conjunction with the default SimpleEnhancer plugin that is self-contained in the RevtreePlugin. The default plugin is useful to depict the initial changeset of a new branch.
You can perform the same operations from the WebAdmin interface.
The source changesets of a svnmerge operation are outlined with a light colored box, which reminds the color of the destination changeset (that is the color of the branch of the merged changeset).
The merge operation is represented with an arrow of the same color as the destination branch as well.
- Author eblot