Live data from Hacker News

Things I hate about Git (2012)

stevebennett.me

21–30 of 83 posts

Re: Things I hate about Git (2012)

#21
post #4

Earlier quoted context omitted.

However, he and many git users enamored of his style are perfectly willing to be condescending to anyone who points out the problems. Which itself is a problem.

Is hg easier to use? Or any other DVCS not created by such a bad UX practitioner?

For simple workflows (and certainly for beginners), hg is far easier to use than git. However when it comes to advanced usage, I personally find git more intuitive and frankly more powerful.

Granted, I learned git first and had been using it for 6 years before using hg.

Re: Things I hate about Git (2012)

#23
post #12

The crucial criticism: The fundamental promise of any version control system is this: “Once you put your precious source code in here, it’s safe. You can make any changes you like, and you can always get it back”. Git breaks this promise. Several ways a committer can irrevocably destroy the contents of a repository: git add . / … / git push -f origin master git push origin +master git rebase -i / git push That should…

  git config receive.denyNonFastForwards true
Should it be the default? Probably, but it's trivial to fix.

Re: Things I hate about Git (2012)

#27

"it's complicated": yes,it is. it's a product designed and built for people who deal with complex systems and information models on a daily basis; they're the equivalent of a professional pilot... not your feeble, senile grandmother. You wouldn't buy your feeble senile grandmother a 787, chuck her in with no training and simple expect her to fly to Bali, would you? "I don't like it and here's a heap of examples which…

There are two categories of possible criticisms: the model, and the implementation.

Fixing the implementation means changing code, improving APIs (e.g. local/remote branch delete).

Fixing the model means finding an everything different system. Yes, a graph-based VCS more complicated than a linear one. But it also matches realities of collaborative software development. And reality is complicated.

As you might guess, I'm sympathetic to criticisms of inconsistency or unnecessary effort, but I believe Git (and other DCVS) to have the completely correct idea about collaborative text versioning.

Re: Things I hate about Git (2012)

#30

"it's complicated": yes,it is. it's a product designed and built for people who deal with complex systems and information models on a daily basis; they're the equivalent of a professional pilot... not your feeble, senile grandmother. You wouldn't buy your feeble senile grandmother a 787, chuck her in with no training and simple expect her to fly to Bali, would you? "I don't like it and here's a heap of examples which…

The difference is that to fly 787s you need quick response and muscle memory so all controls have to be available, and you've got to be able to fix errors in-flight.

And even then you don't want to create a joystick which pulls up when pushing forward.

Post reply on HN