[asterisk-scf-dev] Consolidate git repos?

Simon Perreault simon.perreault at viagenie.ca
Wed Oct 13 08:16:19 CDT 2010


On 2010-10-13 08:50, Kevin P. Fleming wrote:
>> Is this another instance of the GNOME vs KDE release models? ;)
> 
> I've never used GNOME, so I have no understanding of that situation :-)

GNOME and KDE have long been considered canonical examples of two
release processes:

- GNOME: Many small components, each having its own release process and
version number. Many of these components have their own CVS/SVN repository.

- KDE: A few large components, all living in the same CVS/SVN
repository, release all at the same time with the same version number.

What we've seen over time is that GNOME has been gradually moving
towards the KDE release process, while KDE's release process has stayed
generally the same. More components are now part of the GNOME
repository, and releases are more... uh... coordinated. The reason is
that even though they tried very hard to ensure that interfaces between
the small components stayed backward compatible, it's impossible not to
have glitches. Even with KDE they do have incompatiblities between
components sometimes. But GNOME's release process made it much more
prone to these incompatibilities, and distro packagers received a lot of
the resulting pain. They generally had to work much harder to package a
GNOME release than a KDE release, trying to find versions of components
that played well together. Sometimes such a string of component versions
was impossible to find, and they had to backport fixes to create one
string of components that worked.

So from their experience I think this project should take the KDE
approach. No matter how much you want to ensure that interfaces stay
compatible, bugs are going to appear. It's inevitable, humans are
fallible. The release process can make it more or less likely to happen.

I don't think it's the "Git way" to have fine-grained repositories. It
can be done either way in Git, just as it could with CVS/SVN/anything
else. It's about the release process, not the versioning tool that you use.

What is the perceived advantage of fine-grained repositories?

Simon
-- 
NAT64/DNS64 open-source --> http://ecdysis.viagenie.ca
STUN/TURN server        --> http://numb.viagenie.ca
vCard 4.0               --> http://www.vcarddav.org



More information about the asterisk-scf-dev mailing list