[arch-dev-public] Killing CVS [was: Status Report 2007-10-15]

Paul Mattal paul at mattal.com
Tue Oct 16 13:16:38 EDT 2007


Aaron Griffin wrote:
> On 10/15/07, Andreas Radke <a.radke at arcor.de> wrote:
>> >From what I read and talk around it seems most European devs are more
>> comfortable with svn and American devs prefer git.
> 
> Heh, you forgot Canadian!
> 
> Either way, I think the distinction is more like so:
> The coders tend to prefer git, while the non-coders prefer svn.
> 
> I'm glad you brought this up as it's something that has gone by the
> wayside for far too long. I have basically been waiting to see how
> other discussions have gone.
> 
> So let me make a few salient points here:
> 
> * The SCM doesn't matter. It doesn't. We're not doing anything
> complicated that we need advanced features for. The *ONLY* reason we
> use an SCM at all for PKGBUILDs is to track history.
> 
> We keep discussing all this stuff as if we need super advanced
> features for PKGBUILDs and local branches, complex N-way merges, etc
> etc.
> 
> We don't. We need to commit, and update. That's it.

I know I could potentially be more productive if I could cherrypick 
PKGBUILD mods from community members. Sounds like a small thing, and 
it probably is, but git is a powerful way of working.

That said, this is gravy, not necessity. Potential for improvement 
but not required.

> * There will always be a discomfort when we switch these things.
> However, if all developers use devtools except in extreme
> circumstances, there's no reason this discomfort should actually cause
> any problems.
> 
> * Pros and cons are useless here. As I said in the first point, we
> have no need for the advanced features based on our usage patterns.
> Sure, we can make use of them later, but right now it shouldn't be
> weighting any decision.
> 
> * Changing SCMs is fairly easy. If we fuck up, we change to something
> else - I could do all the grunt work here if people see this as any
> sort of issue (it's a 5-10 line config file for tailor)
> 
> ------------------------------
> 
> So, here's what I'd like to do. This decision is fairly arbitrary, so
> let's try and throw out FACTUAL points FOR each SCM.
> 
> I don't want to see any "X is better than Y because of Z" drivel. I
> want to see "X supports Z". Everyone has their "baby" SCM. That's not
> the issue. We need to make a decision, and opinions should have no
> place here.

The existing cvs seems to support everything, and if we're only 
evaluating based on support and not based on better features, why 
switch at all? Why not stay with CVS?

That said, repoman v0.1 will support SVN. Primarily because there is 
a nice python interface to svn. Maybe there's one for git, I don't 
know. I'm sure we will eventually do this in a pluggable kind of 
way, and support more than SVN, but for right now, I needed to 
choose 1 and I've chosen SVN.

SVN supports checking out only part of a tree/repo.

GIT supports gitweb and sign-offs which is a really good way to view 
history and evaluate changes.

GIT supports tags as flexible as we need, I think. svn does but not 
as flexibly as the way we currently use CURRENT and TESTING, etc. in 
cvs. So we'd need to figure out how the db scripts get modified and 
how they know which versions correspond to our old CVS tags.

This is intended just as a start for discussion.

- P




More information about the arch-dev-public mailing list