On Tue, Jul 5, 2011 at 5:26 PM, Ivan Kozik <ivan@ludios.org> wrote:
On Tue, Jul 5, 2011 at 22:19, Kevin Horn <kevin.horn@gmail.com> wrote:
> Git requires bash.  This makes it painful for me (on Windows).

In what sense? You can run git from cmd.exe, without having to deal
with bash.  (You're not required to use 'Git Bash'.)

Interesting.  I was told (and had read) that it _was_ required.  So I've been
operating under that assumption.  If you can run it in a cmd.exe window that
_might_ relieve one of my pain points.
> Also, Git _is_ worse on Windows than it is on *nix.  It's just not as bad as
> it _used_ to be.  It's functional.  It works.  But it is difficult to deal
> with,
> and a lot of Windows users I have talked to (as well as myself, of course)
> just don't like using it.

Is there anything in specific that is difficult?  I haven't had
Windows-specific problems with Git on Windows, and I've been using it
a lot.


Nothing terribly specific comes to mind, as I don't _use_ git very often.

Only one of the projects I have ever contributed to uses git, and they
just switched recently (from Mercurial, which makes very little sense to me
as they are just about feature-equivalent).  The others all use Mercurial, with
the exception of Twisted.  So when I started learning about DVCS, Mercurial
was pretty much my introduction (aside: it seems to me that people in general
seem to prefer whatever DVCS they were originally introduced to).

Every couple of months I pull down a "new" release of git or TortoiseGit or whatever
and tinker around with it, but it just isn't very nice compared to Mercurial.  Maybe
it will be someday.

And it's not that anything is particularly _difficult_, so much as annoying.
I find the CLI interface weird and clunky.  I recall thinking some of the design
decisions were not particularly good (though it's been long enough that I can't
recall what they were exactly...and I have some complaints about the design of
pretty much every DVCS out there, so...). These aren't Windows-specific issues
of course, but when you add the Windows-specific issues on top of them, it just
makes git that much worse to deal with.

Of course, this is entirely subjective, and is totally my own opinion.  Maybe the
next time I update git it will annoy me less.

As far as specific Windows-related issues, here's what I can come up with.  These
are all pretty vague, I'm afraid...

- Let's start with installing.  It would be really nice to be able to go to a website, download
a package or archive or something, read some instructions and install git.  Preferably with
Tortoise-X-like Explorer shell integration (though I can live without that).  I have never been
able to do that.  Instead, it's try the above, have it not work, search Google for a bunch of
tutorial-style blog posts, try a bunch of stuff, maybe edit or move some files in whichever
of several distributions I've had to download, and spend at least a couple of hours getting
things working.  At this point I'm already annoyed with git and I haven't even started using it yet.

- Now I'm going to check things out.  OK, fine.  First hurdle is that terminology is different from
what I'm used to, though that's hardly Git's fault, and I can deal with that.  But in order to deal
with the change in terminology, coming from Mercurial, I'd really like to see some nice online help.
Last I checked, git totally failed in this area, and was noticeably worse on Windows than on *nix.
(This was maybe 3 or 4 months ago).  Ok, so now I'm having to search web/man pages for how to
use git properly.  Admittedly, some of this is necessary anyway for something as complex as
a DVCS system, but it shouldn't be necessary for basic commands.  I also seem to recall being
annoyed by syntax for various commands actually being slightly _different_ on Windows than
on *nix, but I can't say definitely that that was the case now (it was a long time ago, my
memory is hazy, and I may have just misunderstood something).  I have no idea if this is
still a problem (assuming it ever really was).

- I definitely miss Mercurial's friendly little warnings about when I might be about to screw
things up.  I doubt git will ever have anything like this.  It seems antithetical to the git mindset.

- Git just seems like it's second class citizen in the git world (this is true of a _huge_ number
of open source projects, so it isn't just git, but I have a whole other rant about why this is a
Bad Thing [tm]  ).  A lot of complaints about git on Win32 (which I find to be pretty valid
complaints) I see answered with a sneer and something like: "Oh sure, but that's what you
get for using _Windows_."

To sum up, I use both Windows and Linux.  That is unlikely to change any time soon.  I want my
tools to work nicely and be polished in both environments.  Git has not impressed me as being
able to do this yet.  Even if it ever does get to this point, I still probably won't like it as much as
Mercurial, just because hg is what I've become used to, and git doesn't offer much that hg
doesn't already have.

Well, this is already way longer than I had intended it to be...

Kevin Horn