4 ms·
Linus on git: ...it wasn't all that pleasant to use for outsiders early on, and it can still be very strange if you come from some traditional SCM, but
by mmariani 14y ago
Linus on git:
...it wasn't all that pleasant to use for outsiders early
on, and it can still be very strange if you come from some
traditional SCM, but it really has made my life *so* much
better...
So, here he pretty much acknowledges you have to think like Linus to get git like Linus. I remember getting bashed here on HN for saying so, but I don't care and I'll say it again.
From the user's perspective git is not fun to use, at least not like hg or fossil are. Good programs just get the job done, but great programs are fun to use.
- wtetzner 14y agoWell, from your perspective it is not fun to use. I actually really enjoy using git.
- ramblerman 14y agoYou seem to be mixing "unpleasant to use early on" with git as it is today in order to prove your point. And to be fair your point is entirely opinion based anyways. You don't like git (fair enough), but you might be getting bashed because it is a lot of people's tool of choice. Personally I absolutely love Git.
- envex 14y agoI'm going to second this, I love using git.
- calpaterson 14y agoI didn't use git early on, but it's pretty unpleasant to use today as well. It's fine if you learn the right incantations but it breaks almost every unix rule in the book. Literally: http://www.catb.org/esr/writings/taoup/html/ch01s06.html http://www.catb.org/esr/writings/taoup/html/ch01s06.html There's only a few guidelines there that git obeys. The most obvious one it obeys is "separation".
- _ikke_ 14y agoMost tool require you to learn an interface to operate, and not the internals. Git is quite the opposite. If you are learning a set of 'incantations', git will always seem hard to use. But if you take some time to learn how git works on the inside (which is really not that hard), it gets much easier to understand why and how you need to use a certain command. Some argue that this is why git is bad, but I'd argue that this in the end is a good thing, because it gives you so much more power. Learning how to use git is an investment, bit in my opinion an investment worthwhile.
- dfc 14y agoWhich rules do you think it breaks?
- qznc 14y agoReading through the list of unix rules you linked, I find git reasonably obeys them. For example "Clarity is better than cleverness": Git provides a clear internal structure (Blob DAG). It does not try to provide clever merge algorithms, since "Buying a small increase in performance with a large increase in the complexity and obscurity of your technique is a bad trade". Or another example "Design programs to be connected with other programs". In contrast to Mercurial, many git commands are separate programs and it is trivial to implement your own in any language. Arguably git violates "In interface design, always do the least surprising thing", since it does not try to provide a comfy start for svn exiles.
- nine_k 14y agoFor SVN exiles, there-s git-svn http://www.kernel.org/pub/software/scm/git/docs/git-svn.html http://www.kernel.org/pub/software/scm/git/docs/git-svn.html
- Evbn 14y agoGit has an annoying feature where commands (like 'reset') will do completely different only vaguely relayed things based on flags or arguments, instead of having different commands.
- lloeki 14y agoSince we (two people using it personally beforehand) introduced git at work, the 15 others of them — the kind of folks that swear by the mouse and the GUI — enjoy it so much every day they voluntarily dropped all forms of GUI/VS2010 integration to do everything git on the command line.
- 7rurl 14y agoYou are making some pretty big jumps in logic there... he's not saying you have to "think like Linus" to get Git, he's just saying it is different enough from traditional SCMs that there is a learning curve. I use a traditional SCM everyday at work (Perforce) and it only took me an hour or so of reading to get Git and be productive with it. I'm not sure I'd say Git is "fun" to use, but I'm not sure I'd say that any SCM I've ever used is "fun". Getting the job done is more important than fun to me.
- reledi 14y agoI wouldn't be surprised if many people enjoy using git because of its complexity. That's one reason why I consider it fun to use.