Differences between revisions 2 and 3
Revision 2 as of 2007-01-28 23:06:25
Size: 1292
Comment: Remove pserver support from missing features
Revision 3 as of 2007-07-02 21:51:07
Size: 1334
Editor: red
Comment:
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
$ convert-repo [-q] [--datesort] <src> [dst [mapfile]] $ convert-repo [-q] [--datesort] <src> [<temp-dst> [mapfile]]
$ hg clone <temp-dst> <final-dst>

Basics

Convert-repo is a generic repository conversion framework. It can be found in contrib/convert-repo in the Mercurial distribution. The development version currently supports importing from Git and CVS and exporting to Mercurial. Run it as follows:

$ convert-repo [-q] [--datesort] <src> [<temp-dst> [mapfile]]
$ hg clone <temp-dst> <final-dst>

Repository types of src and dst are automatically detected. If dst doesn't exist, it is automatically created as a Mercurial repository. If dst isn't specified, it defaults to src-hg. If mapfile isn't specified, it's automatically created (in dst/.hg/shamap for Mercurial).

CVS support

CVS support is currently only available in the development version. It uses [http://www.cobite.com/cvsps/ cvsps] to determine changesets and communicates directly with cvs server or cvs pserver to extract file revisions. CVS branches are translated to Mercurial named branches. If you'd like to use the preferred repository-per-branch model, these branches can be separated out into their own repositories with hg clone -r <branch> project-hg project-<branch>.

This support is still experimental and the following features are still missing:

  • username remapping
  • keyword expansion (disabled by default)

convert-repo (last edited 2009-05-19 19:31:04 by localhost)