[Adium-devl] Git
Ofri Wolfus
ofri.wolfus at gmail.com
Wed May 2 18:49:08 UTC 2007
Interestingly, after hours of googling, I couldn't find any real
comparison between the two. Both are said to be very similar with
Monotone being more secure (both identify commits using SH1 so you
can't mess with the history but Monotone also allows RSA verification
of the sender, or something like that :) and Git slightly faster. Git
haters say it copied its ideas from Monotone, and Git fans has
problems with Monotone's sqlite backend (which I also feel is wrong)
and had scaleability issues with Monotone back when Git started.
Anyhow, the main reason I gave Git a shot and not Monotone is I
managed to get Git and Cogito running in no time, while I got
confused with Monotone's site and RSA stuff. Git literally needed no
configuration besides my name and email (which can be set globally
for all checkouts/repositories).
For the record, I found this comparison - http://chneukirchen.org/
blog/archive/2006/04/my-dvcs-wishlist.html - saying both are very
similar, and Wikipedia's comparison agrees ( http://en.wikipedia.org/
wiki/Comparison_of_revision_control_software ).
Is there any chance to hear the reason(s) that made Pidgin move to
Monotone and not other alternative?
- Ofri
- - - - - - - - - - - - - - - - - - -
http://www.dpompa.com
- - - - - - - - - - - - - - - - - - -
On 02/05/2007, at 02:48, Evan Schoenberg wrote:
> Neat. :) Do you know anything about how Git compares to Monotone,
> which is the distributed versioning system recently adopted by Pidgin?
>
> -Evan
>
> On Apr 30, 2007, at 1:55 PM, Ofri Wolfus wrote:
>
>> So I've been playing around with Git ( http://git.or.cz ) lately
>> and decided to try converting the Adium repository to it. After a
>> lot of troubles getting the needed python modules for git-
>> svnimport (git itself compiles cleanly if you have expat
>> installed), getting a local mirror of the svn repository (yay for
>> svnsync!), and waiting ~12 hours (yeah, I'm on a G4), I finally
>> got a git repository of Adium :) That being said, I didn't tell
>> git-svnimport to try and detect branch merges, which if works,
>> will be awesome.
>>
>> And now some numbers:
>> * The complete subversion repository (revision 19556) is 1.21GB
>> and containing 19,557x2 files for storing all commits (in db/revs
>> and dp/revprops).
>> * A clean svn checkout of trunk is 242.9MB (revision 19557).
>> * The git repository (containing all current branches and tags)
>> plus a checkout of trunk is 525.4MB, while the .git directory is
>> 413.1MB (this is what we would put on the server if we used a
>> central git repository) and containing 1 pack file of all
>> revisions (or commits in git's terminology). This is after running
>> git-gc --purne on the repository, of course (otherwise git stores
>> each commit in its own file without delta compression). If you
>> didn't know, running git-gc on a repository once in a while is
>> necessary for keeping it small and clean, but this approach allows
>> git to do much better job at delta compressing (as you can see).
>>
>> For those of you who don't know, Git is a distributed version
>> control system, started by Linus Torvalds, that is designed to be
>> fast and scaleable. It tracks its content in a very interesting way
>> (1) that adds it some unique characteristics (implicit rename
>> tracking, merging from more than one branches and so on). It is
>> being used by the linux kernel (not really surprising), one laptop
>> per child, wine, X.Org, DBus and others.
>>
>> Git is able to work over some dumb protocols like WebDav, or via
>> its own dedicated server. The site says it can also operate
>> directly over a CVS server and in the future it may also be able
>> to work over SVN.
>>
>> I'm in no way a git expert, and haven't yet done any "heavy work"
>> with it (only converted the UITestingKit repo and made few
>> commits), but I really think it's worth exploring even if not
>> converting the subversion repository. Git comes with a git-svn
>> utility that allows one to check out a subversion repo to git and
>> commit back to it. Git also has a patch manager built on top of it
>> called StGit ( http://www.procode.org/stgit ), that looks like a
>> great tool although I haven't tried it yet. Anyhow, Git should be
>> useful even when working with Subversion, and unlike SVK it
>> actually works (at least for me).
>>
>> That being said, Git has some limitations like no windows support
>> (not really related to Adium), it needs periodic manual object
>> repacking, and is known not to be so user friendly. The repacking
>> problem can be solved with a cron job or maybe even using some
>> sophisticated commit hook, and personally I had no problems using
>> git although like I said, I didn't do any heavy work with it. Git
>> also lacks graphical tools, although AFAIK nobody on the team uses
>> them.
>>
>> - Ofri
>>
>> 1. http://article.gmane.org/gmane.comp.version-control.git/217
>>
>> - - - - - - - - - - - - - - - - - - -
>> http://www.dpompa.com
>> - - - - - - - - - - - - - - - - - - -
>>
>>
>> _______________________________________________
>> Adium-devl mailing list
>> Adium-devl at adiumx.com
>> http://adiumx.com/mailman/listinfo/adium-devl_adiumx.com
>
> _______________________________________________
> Adium-devl mailing list
> Adium-devl at adiumx.com
> http://adiumx.com/mailman/listinfo/adium-devl_adiumx.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://adium.im/pipermail/devel_adium.im/attachments/20070502/88072627/attachment-0001.html>
More information about the devel
mailing list