Subject: Re: Adding Git to Better SCM Initiative : Comparison

From: Jakub Narebski <[email-masked]>
Date: Fri, 30 Nov 2007 01:18:27 +0100

On Thu, 29 Nov 2007, Alex Riesen wrote:
> Jakub Narebski, Thu, Nov 29, 2007 03:26:12 +0100:

>> +                <s id="git">
>> +                    Medium. There's Git User's Manual, manpages, some
>> +                    technical documentation and some howtos.  All
>> +                    documentation is also available online in HTML format;
>> +                    there is additional information (including beginnings
>> +                    of FAQ) on git wiki.
>> +                    Nevertheles one of complaints in surveys is insufficient
> 
> "Nevertheless" (two "s").
> 
> BTW, I wouldn't call the level of documentation "Medium" when compared
> to any commercial SCM. How can they earn more than "a little", when
> compared to any opensource program?

Source code is not [user level] documentation.

But perhaps it should be "Good" instead of "Medium", although I think
not "Excellent".
 
>> @@ -894,6 +938,14 @@ TODO:
>>                      to install the subversion perl bindings and a few modules
>>                      from CPAN.
>>                  </s>
>> +                <s id="git">
>> +                    TO DO. RPMs and deb packages for Linux. msysGit and
>> +                    Cygwin for Win32 - Git requires POSIX shell, Perl,
>> +                    and POSIX utilities for some commands (builtin).
> 
> I read this as: "Git requires all these programs for builtin
> commands". Which is a bit confusing. Just drop "(builtin)"?

What I meant to say that some Git commands are scripts in Perl or POSIX
shell, and that those Git commands requires POSIX utilities (which of
those utilities are needed is unfortunately not mentioned explicitely
in the INSTALL file); _but_ that there is ongoing effort to rewrite
matured commands in C (as built-ins).

But this is perhaps too long explanation to put it in this comparison
table.

>> +                    Autoconf to generate Makefile configuration; ready
>> +                    generic configuration for many OS. Compiling docs
>> +                    requires asciidoc and xmlto toolchain, but prebuild.
> 
> "prebuilt" (with "t"). Maybe remove ", but prebuilt" completely?

Gaaah, it should be "but you can get prebuilt docs".
 
>> @@ -1106,6 +1165,10 @@ TODO:
>>                      There exists some HTTP-functionality, but it is quite
>>                      limited.
>>                  </s>
>> +                <s id="git">
>> +                    Good.  Uses HTTPS (with WebDAV) or ssh for push,
>> +                    HTTP, FTP, ssh or custom protocol for fetch.
>> +                </s>
> 
> You forgot bundles (aka SneakerNet).
> Again, compared to everyone else it is "vastly superior" :)

Bundles and patches (peer review!) I think truly move it from "Good"
to "Excellent".

>>                  <s id="mercurial">
>>                      Excellent.  Uses HTTP or ssh.  Remote access also
>>                      works safely without locks over read-only network

By the way, can Git be used with repository on lockless network
filesystem? (Although with distributed SCM it perhaps be better
to just use many distributed repositories...). How does it work
with repository available via SMBFS / CIFS or NFS?

>> @@ -1203,6 +1266,10 @@ TODO:
>>                      Very good. Supports many UNIXes, Mac OS X, and Windows,
>>                      and is written in a portable language.
>>                  </s>
>> +                <s id="git">TO DO.
>> +                    Good.  Portable across all POSIX systems.
>> +                    There exists Win32 binary using MinGW.
>> +                </s>
> 
> "binaries": MinGW and Cygwin. And it is definitely "excellent" by the
> standards of the site.

I'd say excellent on POSIX systems, good on Win32 (there are still
as far as I remember some troubles). I hope that gitbox project would
succeed, and one would need only single binary (plus perhaps wish for
GUI, and DLLs) to use git on MS Windows.

-- 
Jakub Narebski
Poland