Re: Distributed SCM in Gnome (Was: Git vs SVN (was: Can we improve things?))
- From: "Gustavo J. A. M. Carneiro" <gjc inescporto pt>
- To: zuh iki fi
- Cc: desktop-devel-list gnome org
- Subject: Re: Distributed SCM in Gnome (Was: Git vs SVN (was: Can we improve things?))
- Date: Wed, 12 Sep 2007 10:38:26 +0100
On Qua, 2007-09-12 at 10:13 +0300, Kalle Vahlman wrote:
> 2007/9/11, Bryan Clark <bclark redhat com>:
> > GNOME is not in need of a DSCM or any other kind of new SCM. For source
> > control, SVN works fine, just like CVS worked fine. I'm not looking to
> > argue the features of one DSCM above another or what we have now, but really
> > the controlling of the source code isn't the problem this DSCM debate is
> > circling.
> The problem which prompted this debate again was the infamous SVN
> accounts lag. DSCM allows people to comfortably work with "their repo"
> and easily get a subset of their current work to a patch for
> submitting to eg. bugzilla. Currently, you'd need to take a checkout
> for each "line of work" you start unless you want to backup your work
> manually with svn diff (urgh). Not so hot, specially since if you are
> not on the net all the time.
> If you can comfortably work without access to the central repo, the
> need for the access becomes less of an issue. Thus helping people keep
> patient with the accounts lag, possibly even making it unneccessary
> for some.
> So, in my opinion, GNOME does need DSCM as a *part* of the solution
> for the current problems.
I don't completely agree. Personally, I have a GNOME SVN account but I
still want to use DSCM. It's not at all related to giving more power to
3rd party contributors (although I admit it's an advantage). It's about
giving more power to _us_ GNOME developers.
For me, it's about:
1- Getting rid of ChangeLog and instead do lots of micro commits and
then using <whatever> log --format=GnuChangeLog > ChangeLog
2- Really Fast commit and history vizualization without network lag;
3- Branching and merging that works correctly out of the box
a) without having to learn to use band-aid tools like svnmerge
b) without having to deal with conflicts in the ChangeLog file, since
it is generated from log messages;
4- Oh, in one of my projects I even got my package to automatically
derive its own version number from the last tag registered in the
branch, so that I only have to tag the source tree and make a release
tarball, not update some version string in some file; how cool is
Gustavo J. A. M. Carneiro
INESC Porto, Telecommunications and Multimedia Unit
"The universe is always one step beyond logic." -- Frank Herbert
] [Thread Prev