This is the mail archive of the frysk@sourceware.org mailing list for the frysk project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Wed, 2007-08-01 at 11:10 +0200, Tim Moore wrote: > Andrew Cagney wrote: > > + discuss switching to git and/or mercurial > > > As further grist for the mill, and hopefully not gasoline on the fire, here is our > colleague Jim Meyering's view on git vs. hg: http://meyering.net/dVCS/ . He's > even more adamant about it in person :) This discussion and my own struggles this weekend to get a mirror of the repository into mercurial show how fragile all these distributed version control systems still are :( Anyway, Tim gave a great hint about how he got the git mirror working. He reconstructed the original repository by checking in symbolic links to restore to original repo/modules splitup as in CVS. Then I thought you could also try to do this beforehand on the raw CVS repository. And yes, that works pretty well to make tailor grok it all. Tailor is nice since it can translate between all kinds of different version control systems: http://wiki.darcs.net/DarcsWiki/Tailor Attached is the script I use to get at the raw CVS repository, patch it up a little to appease tailor and the tailor config file. This only gives the main branch, no branches, but it does include all 6100+ changesets since 2005 (6103 changesets with 37342 changes to 9481 files). It also makes frysk look like just one big module. But I don't know if anybody ever actually uses the separate frysk-* and frysk*-build modules in the first place. The first conversion is super slow (multiple hours!) this seems to come from CVS having a "limiter" that only allows one transaction each second. And with 6000+ changesets and different files in a changeset not being part of the same transaction according to CVS, you quickly get to 5 hours just waiting for CVS... Unfortunately there is still one small issue with the getopt files. Somehow the initial checkin of the getopt library seems to completely confuse tailor and 4 files don't seem to be tracked. So you will have to touch them up by hand afterwards. See comments in the script. If you want to play with the mercurial repository start with: hg clone http://gnu.wildebeest.org/hg/frysk That is a read-only repository. But be gentle (it is 115MB), that is my personal machine, it should auto update a few times a day, but no guarantees that I keep it going. You can however recreate a similar repository with the attached script and then just put it in some cron job to periodically update. Cheers, Mark
Attachment:
convert-frysk-repo.sh
Description: application/shellscript
Attachment:
frysk-cvs-hg.tailor
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |