Lan Barnes wrote:
On Fri, August 17, 2007 1:11 pm, Andrew Lentvorski wrote:
Given that the git Windows port is a second-class citizen, Git is not
bound to gather the most momentum.
Mercurial specifically goes out of its way to support Windows. This
means that Mercurial, with time, is likely to achieve far greater
penetration than git.
bzr also has a similar attitude as Mercurial toward Windows.
This is a chronic problem which has 2 parts. Windoze lusers mindspace and
real issues.
Actually, this one is a Linux mindset problem--specifically Linus.
Linus doesn't care about using git on anything other than the Linux
kernel so he will spend zero effort outside of that.
This isn't even about two code bases. It's about things like: not
handling EOL correctly, doing things with shell scripts when something
like Tcl, Perl, Python, Ruby, etc. would automatically handle cross
platform because they fill out the Unix things missing under Windows,
complete disregard for other usage models, etc.
Maintaining more than one code line and supporting-server architecture in
OSs that provide significantly different services is an invitation for one
OS to become the buggy poor cousin, unjustly maligned (and, yes, it is
unjust to malign windoze for not supporting fork). It's a back end, fer
crissake. Fortunately most OSS SCM tools don't see the need to respond to
this pressure. When they do, IMNSH opinion it's a mistake.[0]
Well, what you have just said screams out to not write in a language
that *requires* you to play with the platform dependencies. aka. don't
use C and shell scripts.
Mercurial dodges most of the dependency simply by being written in
Python. Consequently, it doesn't worry about not having things like a
command line bzip (it's in a library) or openssh (I'm pretty sure that
Python is getting a Python-native version of at least openssh-client
shortly).
I know that I *still* advocate using Subversion with Eclipse solely
because it has a built-in, Java-native version of openssh and I don't
have to screw with "how to install ssh on Windows".
Most of the current crop of DVCS systems understood that lesson from the
get go. Codeville and Mercurial use Python. Monotone uses Lua. darcs
uses Haskell. They only jump out to C/C++ when absolutely required for
speed, and only after extensive profiling and use. So, while they have
the occasionally Windows glitch, it's not hard to fix.
Only the studly boys over on Linux decided that they were smarter than
everyone else and were going to use C and bash (although I see from
freshmeat that git has picked up a Tcl dependency--perhaps there is hope
yet).
I, personally, originally had concerns about git because it seemed to be
a project born because Linus was being a petulant baby about the whole
BitKeeper fiasco. Fortunately, enough other people actually jumped in
on it to make it a viable project.
And IMNSHO this needs to be built into any system for it to be considered
up-to-date.
Then git wasn't up to date for a *long* time. Eventually some people
wanted to use git on Windows and corrected that, but it took quite a while.
-a
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list