Re: Distributed SCM in Gnome (Was: Git vs SVN (was: Can we improve things?))

On 9/11/07, Adam Schreiber <sadam clemson edu> wrote:
> On 9/11/07, Vincent Untz <vuntz gnome org> wrote:
> > Hrm. I'm not sure that this statement ("_very_ strong general opinion")
> > is true. Some people feel this is the way to go, and some are pushing
> > very hard for this, but there are also people who don't really care and
> > wonder if we need this.
> As a maintainer for a smaller project where there are only 2 regular
> contributors (who are both maintainers), I count myself in the "Why
> would we need this for our project category?".

The advantages of a distributed system are not necessarily related to
the number of regular contributors.  In fact often it's most helpful
for those that aren't regular contributors so that they can commit
patches periodically even if they don't have an official svn account.

But beyond that, distributed systems *must* make it easy to branch and
merge due to the very nature of distributed development.  So even if
you don't actually use the tools in a distributed way (you can still
use these systems in essentially the same centralized way that you
could with CVS / subversion), they still give you the great branching
and merging features.  This is a killer feature for me and is reason
enough to use it (i use git on personal projects that don't have any
external contributors, for instance, simply because of this feature).
You may say "we don't really use branches".  Well, I never really did
when I was using subversion either, because it was so difficult to
merge back easily.  But when the tool makes it easy to merge things
back and forth, you start using branches regularly.  And it makes it
so much easier to use good development practices (e.g. developing
independent features independently, making small, self-contained
commits, etc) when you do it this way.

Add to that the fact that it allows you to make commits offline, and
only deliver to the central repository when you've got things in a
reasonably good working order, and other things like that.  So I guess
my point is that you shouldn't think of a distributed version control
system only in terms of how it enables distributed development.  There
are other reasons to recommend it as well.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]