Gentoo Archives: gentoo-scm

From: Fabian Groffen <grobian@g.o>
To: gentoo-scm@l.g.o
Subject: Re: [gentoo-scm] Gentoo SCM conversion status report, 2010/01/27
Date: Sat, 27 Feb 2010 11:25:17
Message-Id: 20100227112443.GU14133@gentoo.org
In Reply to: Re: [gentoo-scm] Gentoo SCM conversion status report, 2010/01/27 by "Robin H. Johnson"
1 On 28-01-2010 19:52:16 +0000, Robin H. Johnson wrote:
2 > On Thu, Jan 28, 2010 at 08:38:52AM +0100, RĂ©mi Cardona wrote:
3 > > > Testing git-cvsserver:
4 > > > ----------------------
5 > > > No news. Volunteers needed.
6 > > Was there a lot of interest in this? I had the impression fewer and
7 > > fewer people actually wanted/needed this...
8 > We wanted it for people that didn't want to change all of their workflow
9 > at once.
10 > 1. Clone repo to local system.
11 > 2. Do a CVS checkout of what they wanted from the git-cvsserver (running locally).
12 > 3. After CVS commit, they have to do Git push themselves still.
13 >
14 > It's mainly testing that it works and writing up a set of instructions
15 > for doing so.
16 >
17 > Not proposed at this time: Providing a central git-cvsserver instance,
18 > as users would be forced to update very often I think (but testing this
19 > assumption IS needed).
20
21 I toyed with this myself recently.
22
23 I don't see any benefit of having users locally running cvs against
24 their own bare git repo checkout. With our current unmasked versions of
25 CVS in tree we need to do hacks with scripts via CVS_RSH to work with
26 it. I would say that it should be offered (via ssh as normal) by the
27 main git repo to be useful.
28
29 I can't say anything else but that git's cvsserver works extremely well.
30 It does "atomic multi directory commits" fine, and keeps a revision
31 number for files like CVS does. All common operations (add, remove,
32 update, diff, commit, status) work fine, be it with slightly different
33 messages returned by the server. Keyword expansion doesn't work, so our
34 Ids wouldn't be updated.
35
36 Interaction with the same repo being committed to with CVS and pushed to
37 with git goes well, conflicts are handled for CVS commits the usual way
38 by requiring to be uptodate.
39
40 I believe (and that is how I am planning to use it initially for one of
41 the other projects I participate in) that the git-cvsserver makes it
42 very easy for users in the switch. You only need to recheckout a CVS
43 working copy, but then you don't have to change any of your habits.
44 Once you're ready for git, you can switch, and even that you can do
45 gradually with a cvs and git checkout side by side.
46
47
48 --
49 Fabian Groffen
50 Gentoo on a different level