[Kolab-devel] Switching the Kolab server to GIT?
Christoph Wickert
wickert at kolabsys.com
Fri Nov 12 17:58:10 CET 2010
Hello world,
the Kolab server recently switched from CVS to HG. While this was definitely a
step into the right direction, I feel however that it is not the end of the
journey and we can still improve.
My proposal is to do another switch and move to GIT. Why that?
1. GIT will allow us better integration with other parts of the FOSS
ecosystem. As Kolab strongly depends on a lot of projects, this is an
important topic. ATM we have Cyrus, ClamAV and Horde using GIT. KDE is already
in the process of switching to GIT, and others are likely to do the same.
2. It's not only upstream projects that use GIT but also downstream packaging
efforts like Debian, Fedora or SUSE. Our repo would be a chain link from
upstream to downstream.
3. GIT is the more well-known tool, which lowers the barrier to entry into the
Kolab community by not having to learn another tool. Think of projects like
gitorious with it's incredible growth over the past years. I'm sure the user
base of GIT is larger than any other distributed SCM, this gives us a more
potential contributors.
4. GIT has a vast ecosystem of additional tools that develops rapidly due to
the large and growing user base. To name a few that come to mind quickly as I
think they could be useful for us:
* Gerrit online code review: http://code.google.com/p/gerrit
* SCMbug - Bug tracker - SCM integration: http://freshmeat.net/projects/scmbug
* GitOlite - User and permission management:
http://github.com/sitaramc/gitolite
5. GIT has a nice Web interface: If you don't like gitweb, there is cgit. It's
is not only looking good but also very fast due to it's intelligent caching.
6. GIT is fast:
$ time git clone ssh://wickert@git.kolabsys.com/git/server.git
...
real 4m9.560s
user 0m7.599s
sys 0m1.957s
$ time hg clone ssh://hg@hg.kolab.org/server
...
real 6m11.644s
user 0m15.824s
sys 0m2.846s
That is real +49%, user +108% and sys +68%. Both repositiries are on the same
server.
7. GIT takes little disk space:
$ du -s linux/kolab/git/server/
62544 linux/kolab/git/server/
$ du -s linux/kolab/hg/server/
74040 linux/kolab/hg/server/
That is +18,3%
8. Back in February when the question whether to move away from CVS was raised
on this mailing list, several people already proposed GIT. Obviously people
like GIT and as developers, we should not ignore our community.
For me the 'soft' facts like the larger ecosystem and tooling community, the
tigher link to up- and downstream and the preference of the community or the
user base are even more important than technical numbers.
Let's go one step further to the community. I'm sure we will not regret it.
Regards,
Christoph
--
Christoph Wickert
Senior Engineer
Kolab Systems AG
Zürich, Switzerland
e: wickert at kolabsys.com
t: +49 251 871 369 77
w: http://kolabsys.com
pgp: 85DACC63 Christoph Wickert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.kolab.org/pipermail/devel/attachments/20101112/0cfc9e80/attachment.sig>
More information about the devel
mailing list