Merge Tracking

"Make merging changes simple."

Subversion's own Merge Tracking

Development of Subversion's own merge tracking support is currently underway, with basic functionality expected to be included in Subversion 1.5. Additional features may follow in subsequent releases; email the development list if you're interested in participating in the definition or implementation process.

Merge Tracking in Subversion 1.5.0 is roughly equivalent in functionality to svnmerge.py, recording and using merge history to avoid common cases of the repeated merge problem, and allowing for cherry-picking of changes. It exposes merge history via properties, and allows for repository dump/load (including the ability to re-create the merge history index). It supports both the FSFS and BerkeleyDB Subversion file system backends. (Early implementations added sqlite as a dependency, but this was later removed: Subversion 1.5 does not use SQLite.)

Remaining tasks for 1.5.0 are tracked in the issue tracker.

Additional Merge Tracking features planned for post-1.5.0 include blocking of changes, misc. auditing/reporting, handling of cyclic merges, and other high-level features described in the recorded use cases. This list of issues can also be found in the issue tracker (query for the merge-tracking keyword to get the comprehensive list).

External Merge Tracking

Tools built on top of Subversion