[python-win32] Conversion to Mercurial is done

Mark Hammond mhammond at skippinet.com.au
Sun Mar 6 07:05:11 CET 2011


I've converted the CVS repository to a Mercurial (hg) and after a few 
tweaks and re-conversions, it seems to have done a good job.  It is 
purely a coincidence that this finally happened on the same week Python 
itself flicked the Mercurial switch :).

I'd like to encourage everyone with an interest in this to grab a clone 
and have a play - note that you can make a clone, make some local test 
commits, then throw the clone away without pushing back to sourceforge.

Some notes:

* People not familiar with hg should read the hg book at 
http://hgbook.red-bean.com/ and any other tutorials they can find.  The 
model is significantly different to CVS and SVN (but somewhat similar to 
Bazaar and Git)

* The hg repo is at sourceforge and all developers who had CVS access 
should have mercurial "push" access.  You can browse the repo via the 
normal sourceforge web interface.  The pywin32 sourceforge page with the 
configuration information is at 
https://sourceforge.net/scm/?type=hg&group_id=78018

* I've disabled access to CVS for all developers - the CVS repo still 
exists and can be re-enabled should some serious issue be found, but 
eventually it will be removed completely from the project (and probably 
make the raw repo available for download via sourceforge)

* I'm still battling the hg hook for sending emails as changes are 
pushed, but think I have that working.  I'll make a trivial commit in 
the next few minutes to test that out, but note that in the worst case, 
commit email may not appear for a day or few.

* You should enable the "eol" extension for Mercurial to ensure you get 
Windows line endings.  Eventually I hope to have a hg server-side hook 
to reject changes which screw up the line-endings, but I've failed to 
make that happen so far.  Note that support for Windows line-endings is 
a recent mercurial feature and may have rough edges.  Before committing 
to your local repo, please check that 'hg diff' isn't marking a change 
in every line in one of the changed files - it is does, please hold off 
the commit and contact me.

* I can recommend the "Tortoise HG" tool for Windows - it allows you to 
disable the "shell extensions", but you still wind up with normal 
command-line hg plus a nice GUI tool you can invoke if desired.

* Sourceforge hg seems a little slow, especially fetching the full repo. 
  Fetching incremental updates should be better, but if there are 
performance issues related to sourceforge, we can look at hosting the 
master repo elsewhere.

* Although it should not be necessary, I reserve the right to nuke the 
hg repo and start again with the CVS conversion.  This will only be done 
over the next week or 2, and only if someone notices a significant 
problem in the conversion and I would need to "back-port" any hg changes 
into CVS.  If this did happen, you would be unable to update any 
existing clones you made - you would have to start again into a clean 
local tree.

Please let me know how you go!

Thanks,

Mark


More information about the python-win32 mailing list