Hi!

The issue of using some kind of distributed version control has come up a few times in the past few weeks. I've finally decided to start playing around with this a bit. I decided to create an experimental mercurial (http://www.selenic.com/mercurial/wiki/) repository.

I've never used mercurial (or any distributed version control system, for that matter) before, so I really don't know too much about this. I'm not sure how this can be useful to us at this point --- that's part of what we can find out :) . One immediate gain is that once you create your own local clone of the repository, you have a local copy of the entire history, which is nice. BTW, the size of the cloned repository containing the entire history of trunk is about 175MB, which is not that much bigger than a clean svn co, I think!

The easiest way to install mercurial, IMO, is with easy_install (http://peak.telecommunity.com/DevCenter/EasyInstall).

Right now the repository only contains trunk. I created it using hgsvn (http://cheeseshop.python.org/pypi/hgsvn). The import (on aussie) took about 20 hours (!), so you're probably better off just cloning mine, rather than creating your own from scratch...

The repository is available on aussie at ~dov/lyx-devel/trunk. After installing mercurial, you can get your own copy using the following command:

hg clone [--ssh="ssh -C"] ssh://[EMAIL PROTECTED]//home/dov/lyx-devel/trunk

I didn't want to set up a mercurial server on aussie before getting authorization to do so (I don't know if there are any security issues involved) --- but once we do that, the repository can be available also to developers who do not have access to aussie.

I set up a cron job to update the repository every half hour, but I haven't tested it yet, so I'm not sure if it's working... As of this writing, it's synchronized to r20013.

Note that hgsvn creates tags for each mercurial revision, saying which svn revision it corresponds to. However, it only creates these as "local tags", so you won't get them when you copy the repository. To see them, you can look in ~dov/lyx-devel/trunk/.hg/localtags .

Let's see if this is at all useful...
Dov

Reply via email to