Differences between revisions 1 and 32 (spanning 31 versions)
Revision 1 as of 2006-12-19 06:40:17
Size: 1221
Editor: mpm
Comment:
Revision 32 as of 2007-07-19 21:58:55
Size: 3344
Editor: 72
Comment:
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
== Bazaar? ==

 * ["Tailor"] - a generic conversion tool.
Line 9: Line 13:
Because of the litigious behavior of Bitmover, no Bitkeeper conversion tools have been made publically available. Because of the threatening behavior of Bitmover, no Bitkeeper conversion tools have been made publically available.
Line 16: Line 20:
 * ["convert-repo"] - the development version of Mercurial includes a CVS converter
Line 17: Line 22:
 * cvs20hg - a fast CVS to Mercurial converter
 * hg-cvs-import
 * ["fromcvs"] - a fast, incremental CVS to Mercurial converter
 * [http://hg.beekhof.net/hg/cvs-import hg-cvs-import] (need info)
Line 22: Line 27:
A sample Darcs conversion script is available in the contrib/ directory of the Mercurial source.
Line 23: Line 29:
For a more accurate conversion, which preserves Darcs information on renames and some information on tags, use ["Tailor"].
Line 26: Line 33:
See GitConversion (incremental).
Line 29: Line 36:

Converters that work on local repositories (faster, if this is an option for you):

 * SubversionToMercurialSync (need info)
 * http://hg.omnifarious.org/~hopper/svn2hg - requires python2.5 and is very rough, lacking in documentation or any UI niceties at all to speak of.
 * http://ajayu.memi.umss.edu.bo/viborita/weblog/svn2hg.py-convertir-repositorio-subversion-mercurial - simple script that keeps subversion history, download every rev info from svn server, doesn't work with svndump. (use the download link, not copy&paste).
 * ["Tailor"] - a generic conversion tool.

Converters that work on remote repositories:
 * [http://dingoskidneys.com/cgi-bin/hgwebdir.cgi/queue-convert-svn/] - Patch queue against Mercurial. Patches create a convert-repo hacked to support SVN as a source. Uses the SVN API, not SVN command line + subprocess.
 * [http://cheeseshop.python.org/pypi/hgsvn hgsvn], rather than a one-shot conversion tool, allows you to work on SVN checkouts using Mercurial (mirroring all SVN history in a local Mercurial repository on which you can also do local development). It is useful for managing private branches, submitting patches to project maintainers, have fast local operations instead of slow remote "svn up/log/blame", etc.
 * [http://hg.rosdahl.net/yasvn2hg yasvn2hg] - yet another SVN to HG converter. Handles branches, tags and file copies/renames. Calls the svn client for each changeset, so it's not very fast. Direct links: [http://hg.rosdahl.net/yasvn2hg/raw-file/tip/yasvn2hg yasvn2hg program], [http://hg.rosdahl.net/yasvn2hg/raw-file/tip/README README file].
 * ["Tailor"] - a generic conversion tool.

TableOfContents

Arch / TLA / Baz 1.5

Tools for Arch conversion can be found at ArchConversion.

Bazaar?

  • ["Tailor"] - a generic conversion tool.

Bitkeeper

Because of the threatening behavior of Bitmover, no Bitkeeper conversion tools have been made publically available. See GenericConversion for details on building your own repository conversion tool.

CVS

Multiple convertors exist for converting from CVS to Mercurial:

  • ["convert-repo"] - the development version of Mercurial includes a CVS converter
  • ["Tailor"] - a generic conversion tool
  • ["fromcvs"] - a fast, incremental CVS to Mercurial converter
  • [http://hg.beekhof.net/hg/cvs-import hg-cvs-import] (need info)

Darcs

A sample Darcs conversion script is available in the contrib/ directory of the Mercurial source.

For a more accurate conversion, which preserves Darcs information on renames and some information on tags, use ["Tailor"].

Git

See GitConversion (incremental).

SVN

Converters that work on local repositories (faster, if this is an option for you):

Converters that work on remote repositories:

Perforce

[http://hg.omnifarious.org/~hopper/p4_to_hg p4_to_hg]

This utility can actually keep two repositories in sync.

Currently, it's slapped together and built to serve my particular needs, but it could probably be modified into something more general. It currently makes no attempt to do anything with Perforce's ability to track branches or the movement of changesets from branch to branch. -- EricHopper 2005-09-27 06:31:03

Other systems

["Tailor"] is a conversion tool that can do simple conversions from a variety of systems. See GenericConversion for details on building your own repository conversion tool.

RepositoryConversion (last edited 2020-07-05 13:34:51 by MarcinKasperski)