[Koha-devel] Reverting to previous versions in CVS

Jerry Van Baren gerald.vanbaren at smiths-aerospace.com
Wed Feb 28 14:33:29 CET 2007


Henri-Damien LAURENT wrote:
> Vincent Danjean a écrit :
>> Mason James a écrit :
>>   
>>> ok, i just have to ask... :)
>>>
>>> why git over svn?
>>>     
>>   I think that svn is not very good in merging several branches together
>> several times (even if it is better that CVS). svk can do that for one
>> user, but not really for several.
>>
>>   A distributed SCM will be able to allow fork and merge of several
>> branches (2.2, 3.0, test, test2, ...) taking care automatically of new
>> things and things already imported from/into this branch.
>>   However, as koha is a multi-plateform application, I would suggest to
>> use mercurial[1] instead of git. It is written in python and can be
>> installed on linux, *BSD, Solaris, Windows, ...
>>
>>   
>>> fyi: i dont have any git knowledge/experience, except that chris said
>>> its very differenct from cvs
>>>     
>>   Git and mercurial are very similar. But it's right they are different
>> from centralized SCM (as CVS and SVN). To those that are interested, I
>> would recommend to read :
>> http://www.selenic.com/mercurial/wiki/index.cgi/UnderstandingMercurial
>> and
>> http://www.selenic.com/mercurial/wiki/index.cgi/Tutorial
>> (the tutorial is available in english, french, spanish, chinese and
>> japanese)
>>
>>   
>>>>> Ahem ... we need a new revisioning system :-)
>>>>>         
>>>> Yes (git!), but not for this reason.
>>>>       
>> [1]: http://www.selenic.com/mercurial/wiki/index.cgi
>>   
> I don't have any experience in that.
> But bazaar, monotone, Darcs are other distributed SCM.
> Is there anyone around that experienced those softwares ?

In the November 2004 to May 2005 timeframe (i.e. 2 years ago) I helped 
Wolfgang Denks <http://www.denx.de> evaluate git, Arch, Monotone, and 
Darcs as alternatives to the (Sourceforge provided) u-boot CVS 
repository.  An absolute requirement was true support of distributed 
repositories and secondary requirements were scaling, speed, stability, 
and support.  The requirement for true distributed repositories ruled 
out SVN (and others).

We ultimately chose git for u-boot development for several reasons which 
may or may not apply to Koha:
* Scaling, speed, and stability could not be touched by the others.
* Support and user base: linux development has changed git from rough
     stoneware to shiny porcelain very quickly.
* Support for remote repositories and merging is tremendously good.
* U-boot development is closely related to linux development, so it made
     a _lot_ of sense to use the same SCM.

All the SCMs were capable of getting the job done, some better than 
others.  Speed and scaling were the biggest issues with Arch, Monotone, 
and Darcs.

Here is an intersting link:
<http://changelog.complete.org/posts/528-Whose-Distributed-VCS-Is-The-Most-Distributed.html>

This was as of two years ago, the other SCMs are likely much better now 
(and git is much better now too).

Best regards,
gvb





More information about the Koha-devel mailing list