Hi, On Tue, Oct 31, 2006 at 01:58:48AM +0100, Han-Wen Nienhuys wrote: > >It is better if we get a few interested users to use the service, so > >as to steer early in the right direction. > > OK. What would be your proposal? We can move our repo from repo.or.cz > to savannah, and leave the CVS import cron running on lilypond.org. Do > you want to do it now, or do you need some time? > > One thing that I wanted to remark: I think it's best to have not one > repo per project, but rather, one repository per module. We have a bunch > of modules that are related to LilyPond, but are on different release > schedules.
We can create the repository now. I'm planning to use something like repo.or.cz: /srv/git/project.git /srv/git/project/subproject.git I see that at repo.or.cz this means 'fork' rather than 'subproject'. Maybe that'll become something like: /srv/git/project.git /srv/git/project/s/subproject.git /srv/git/project/f/subproject.git if this is needed. What would you need? Also, is there a difficulty in using several heads instead of several repositories? That is, why not "one head per module" instead of "one repository per module"? > >>The headaches start when you want to merge changes from GIT back into > >>CVS, but that can't be automated anyway. > > > >You can tell me some more about it? This is something that would > >probably be useful to document, if projects want to move progressively > >to git (with a part of the team sticking to CVS and another part using > >git in the first times, and with both repos kept in sync). > > We've just started, so my experience is little. > > The setup is: > > cvs on savannah -> git on lilypond.org (changes come in branch > 'cvs-head', cronjob) > > git on lilypond.org -> git on repo.or.cz for the cvs-head branch > (cron job) > > Then, I pull from repo.or.cz into my local 'master-hanwen' branch. Once > I finish something, I push to the 'master' on repo.or.cz. Every once in > a while, I use a small python script > > http://repo.or.cz/w/lilypond.git?a=blob;f=buildscripts/git-update-changelog.py;h=a1cb3cf2f961bead4f16c83311ce72141808826e;hb=f5a9495df61204bd15ece4da47e563c6d9f44eb1 > > which takes a bunch of GIT patches, applies them to a CVS checkout, > updating the ChangeLog. When I commit to CVS, the changes come back to > me via repo.or.cz, but GIT will merge them automatically. > > (There actually is a script included with GIT to do this, but I found it > flaky) > > It's all a bit hacked together, but the end goal is to move away from > CVS, so hopefully, we can scrap this infrastructure soon. Ok, thanks for sharing. -- Sylvain