Hi All, There is a discussion on the gnome developer mailing lists regarding a possible move from Subversion (SVN) to a Distributed Version Control System (DVCS) such as git, which is already used for the Linux kernel, Perl, some libraries such as clutter. This post is to help contribute to the discussion.
If you are a GNOME Foundation member, you probably got a survey e-mail in December on the issue. The survey results are at http://blogs.gnome.org/newren/2009/01/03/gnome-dvcs-survey-results/ http://mces.blogspot.com/2009/01/gnome-dvcs-survey.html The GNOME dev discussion takes place at http://mail.gnome.org/archives/desktop-devel-list/2009-January/thread.html#00003 The discussion is somewhat heated, so it's no place for translators to post about. If a move eventually takes place, it will require time and effort, so it would not happen within the next six months. Moving from Subversion (SVN) to a DVCS such as git will have lots of benefits for the developers, which is very important. Normally, we expect the KDE project to try these things out first but this time it appears they are sticking with SVN. In general, learning a DVCS such as git is a new modern skill. There are books available, http://book.git-scm.com/ and you can try it out with a free repository (100MB) at https://github.com/ or at Gitorious, http://gitorious.org/ The big question is, how would a DVCS affect the GNOME localisation workflows? Are we going to keep the same easy facilities? Is a DVCS going to make some things easier? Is there another big project which supports localisation to many languages, and it uses a DVCS? Scenario A => Using command line tools, we add a translation to the main repository. Assume the repository is git://git.gnome.org/gnome-games.git we make a local copy by 'cloning' the repository ('checkout' is something different in git) git clone git://git.gnome.org/gnome-games.git This would create a very big tree, because it would make a full offline copy, with all the history for the last ten years or so. When we use SVN, a checkout of gnome-games is 124MB. The approximate size of a 'git clone' should be quite larger. My test with 'git-svn clone' was not conclusive (due to the way it works, it is very slow, I stopped after an hour, which it downloaded 74MB). It might be possible to use the --depth parameter in 'git clone', which can limit how far back the history will go to. Reading the man page for git-clone, it is not clear if we would be able to 'push' (or 'commit' per SVN) the changes back to the tree. --depth <depth> Create a shallow clone with a history truncated to the specified number of revisions. A shallow repository has a number of limitations (you cannot clone or fetch from it, nor push from nor into it), but is adequate if you are only interested in the recent history of a large project with a long history, and would want to send in fixes as patches. Scenario B damned-lies and vertimus should be rather easy to convert to git, since they would simply need to replace 'svn checkout' with 'git clone --depth 0'. Is that the case? Are there any other issues we need to think about? Simos _______________________________________________ gnome-i18n mailing list gnome-i18n@gnome.org http://mail.gnome.org/mailman/listinfo/gnome-i18n