Mercurial is a free, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface.

So we hear.

Main site:

  • Conversion:
  • Good hints:
  • Relate hg to git:
  • Porting CVS repositories to hg:cvsps tool
  • Installing on hosted system ala 1&1:
  • Unix install
  • .hgignore


    CONVERTING FROM CVS to hg on Windows

    Updated cygwin to 1.7. No problems once the firewall was opened (duh).

    Use directions at:

    Don’t forget (mercurial.ini for TortoiseHG):

    Configure your .hgrc to enable the extension by adding following lines:

    hg convert dev

    Gave me an error complaining about dos paths. So I flipped CVSROOT from CVSROOT=:local:d:/data/cvsrepos/

    and rechecked out the CVS repo.
    cvs co dev

    Then hg convert dev started pullling comment-like things out. Looks ok…slows down — seems to be collecting unique comments to line up changesets. If this fails I am so dead. cvsps builds the changesets from CVS.
    20 minutes later, still not done, but sucking CPU like a madman.

    >hg convert dev
    assuming destination dev-hg
    initializing destination dev-hg repository
    connecting to :local:/cygdrive/d/data/cvsrepos/
    scanning source...
    collecting CVS rlog
    2953 log entries
    creating changesets
    100 This is work done on a branch from the original code. I think I was tryin...
    200 update from
    205 changeset entries
    204 Source for CDCompare project
    203 Add CancelDlg module
    202 Add new module
    201 Add Cancel dialog
    200 Many fixes, cancel dialog
    45 MetaKit 2.01
    44 metaKit 2.01
    43 MetaKit 2.01
    42 MetaKit 2.01
    41 MetaKit 2.01
    40 MetaKit 2.01
    39 new files for testing
    38 new test files
    37 new test files
    36 intiial version
    35 samples
    34 final cut of Netdox client
    33 Final Netdox client
    32 Final NetDox Client
    31 LAME 3.91 December 29 2001
    30 LAME 3.91 December 29 2001
    29 Initial put
    28 initial put
    27 update from
    26 from
    25 from
    24 from
    23 from
    22 from
    1 [main] cvs 6656 c:\cygwin\bin\cvs.exe: *** fatal error - cmalloc would have returned NULL
    cvs server: 1 [main] cvs 6656 c:\cygwin\bin\cvs.exe: *** fatal error - cmalloc would have returned NULL

    cvs server: Terminated with fatal signal 1

    transaction abort!
    rollback completed
    abort: unknown CVS response: error

    Maybe that was too big. Try the “kinder” repository, is smaller. Works to the end.

    Maybe the windows binaries are icky. Can I pack up the files and move to a Linux VM?

    Now I have my “dev” repo and my dacdev repo. How to combine?
    This article suggests two solutions.

    .hgignore files

    Leave a Reply