Svnmerge.py

From SubversionWiki
Revision as of 09:34, 30 May 2006 by Giovannibajo (talk | contribs) (add windows download link)
Jump to navigation Jump to search

svnmerge.py is a tool for automatic branch management. It allows branch maintainers to merge changes from and to their branch very easily, and automatically records which changes were already merged; this allows to display an always updated list of changes yet to be merged, and totally prevehents merge mistakes (such as merging the same change twice). See our feature list for a more detailed description.

System requirements

System requirements are down to a bare minimum, to lower as much as possible the bar for using the tool. Currently, you need:

  • SVN command line client, version 1.1 or later.
    It might actually work with an older version but it has never been tested. Notice that the command line client is required: so, noticeably, if you use TortoiseSVN, you need to go install the official SVN distribution to use svnmerge.py (and no, this causes no conflicts whatsoever!)
  • Python 2.0 or later.
    This is used to run svnmerge.py directly from its source; another option is to download the binary Windows distribution (svnmerge.exe) which does not require an existing Python installation.

Downloads

svnmerge.py is maintained within the Subversion repository. The easiest way to get it is through HTTP:

There is not a proper relase plan or development map, so there are no official releases. The tool gets shipped with Subversion mostly 'the way it is' when Subversion itself is shipped. Thus, the trunk version is recommended: we believe it to be mostly stable (there is a quite extensive testsuite). The 1.4-branch version is suggested as an alternative only if you experiment problems with the trunk version (but we encourage you to report them!).

For Windows users, there is a self-contained executable which does not require an existing Python installation (but it still requires the Subversion command line client). You can fetch it here:

This version is occasionally rebuilt from the trunk version. You are encouraged to run it once with --version to check how old it is (compared to the trunk version).