Git has - like several other linux applications - a crappy name.  I dunno if it is a dirty word, but it sounds like one.<br><br>I do not want a whole history of edits if I only want to check-out (svn terminology) the latest version.<br>
<br><div class="gmail_quote">On Wed, Nov 5, 2008 at 11:16 AM, Alexander Klenin <span dir="ltr"><<a href="mailto:klenin@gmail.com">klenin@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Wed, Nov 5, 2008 at 18:02, Florian Klaempfl <<a href="mailto:florian@freepascal.org">florian@freepascal.org</a>> wrote:<br>
> Git is a hype. Git might be nice for projects with >100 developers and<br>
> which has (like linux) dedicated branch maintainers. Git allows to<br>
> support complicated project structures with several layers of<br>
> maintainers and project managers. But this is something smaller projects<br>
> like FPC or Lazarus don't need.<br>
<br>
</div>I disagree. I, for example, have moved all my Unix-based projects to Git,<br>
even personal ones, and it is much better to work with even in a<br>
single-developer case.<br>
In particular, ability to create commits off-line is very valuable to me.<br>
The only problem of Git is poor Windows support, and as unfortunately some<br>
of my projects are Windows-specific, I still prefer to use SVN for those.<br>
<br>
Windows compatibility is also the reason I would not recommend<br>
to move Lazarus/FPC from Subversion (yet).<br>
<div class="Ih2E3d"><br>
>> * Git repositories are MUCH smaller.<br>
><br>
> Who did tell you this? Linus? Does he have the history of the Linux code<br>
> since version 0.1 in his repository?<br>
</div>Since Git is distributed, the notion of "his" repository is rather vague,<br>
but such a repository definitely exists:<br>
<a href="http://git.kernel.org/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=summary" target="_blank">http://git.kernel.org/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=summary</a><br>
<div class="Ih2E3d"><br>
<br>
>> * Git is local, so checking history or doing commits are really fast.<br>
><br>
> I doubt that a repository containing the full lazarus history is smaller<br>
> than a repository containing each file twice.<br>
</div>They are usually of about equal size, for example, svn checkout of<br>
Pidgin (IM tool) is 122 MB while complete history in Git repository is 148 MB.<br>
But the OP's point was that local operations are MUCH faster,<br>
so much that it changes the work flow. For example, to show a few last<br>
log messages<br>
from the lazarus repository takes me 10-20 sec., and showing a diff between<br>
to revisions of a file -- another 30-60 sec., while in Git these<br>
operations are instantaneous.<br>
<div class="Ih2E3d"><br>
>> * You have lots of backups of Git repositories because they are local<br>
>> to each developer. In SubVersion, if the repository server is down,<br>
>> everybody is stuck.<br>
><br>
> Only with committing. With a DVCS you're also stuck if the repository<br>
> for the "official" code is dead. Great that you can "commit" to your<br>
> local repository but nobody will see it so what's the point about it?<br>
</div>With SVN if the central repository is dead, then<br>
the whole history of the project vanishes with no chance of restoration.<br>
Of course, the central repository should be backed up, but still if the failure<br>
occurs, it is catastrophic.<br>
On the contrary, with DVCS (not only Git) such a failure is just a<br>
minor inconvenience,<br>
since each developer has a local copy of the history, and can easily publish it.<br>
<br>
Another compelling feature of Git is the possibility to create and manage<br>
local branches. For example, when I want to add a feature to Lazarus,<br>
I would like to present it as a series of clean patches for easier review<br>
and better log history. However, I can not do this with Subversion in<br>
a practical way,<br>
so I have to submit first patch of the series, wait for it to get accepted,<br>
submit the second one etc.<br>
This wastes both my and reviewer's time so much that it can take months<br>
instead of weeks to complete a moderately complex feature.<br>
Actually, I due to this obstacle have given up trying to develop<br>
more complex features for Lazarus and just submit small patches for<br>
trivial things ;-)<br>
<div class="Ih2E3d"><br>
>> *  How well is Git supported on other platforms than Linux?<br>
><br>
> Near to unusable, mercurial is much better in this regard<br>
</div>That I agree with. Perhaps it is time for me to try Mercurial.<br>
<font color="#888888"><br>
<br>
--<br>
Alexander S. Klenin<br>
Insight Experts Ltd.<br>
</font><div><div></div><div class="Wj3C7c">_______________________________________________<br>
Lazarus mailing list<br>
<a href="mailto:Lazarus@lazarus.freepascal.org">Lazarus@lazarus.freepascal.org</a><br>
<a href="http://www.lazarus.freepascal.org/mailman/listinfo/lazarus" target="_blank">http://www.lazarus.freepascal.org/mailman/listinfo/lazarus</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>o__<br>,_.>/ _<br>(_)_\(_)_______<br>...speed is good<br>_______________<br>I believe five out of four people have a problem with fractions.<br>