5 comments

[ 3.2 ms ] story [ 21.5 ms ] thread
Guy brought up on gui hates shell, blames whatever is to hand when he feels bad about it.
> Git sucks. Reason? It is entirely imperative.

A git repository is a persistent data structure [1]. Operations are typically append-only, requiring --force flags to do any in-place mutation.

> And, well, just like in C, there's no safety pillow - if you screw up a call, something simply goes pear-shaped.

Git is the safety pillow. When you screw up your code, you restore it with git. Article doesn't mention the reflog, which is the second safety pillow hiding under the first.

[1] https://softwaremill.com/persistent-data-structures-in-funct...

The author sums up his gripe here:

    The user isn't supposed to read the docs to accomplish something simple. Simple things should be intuitive. Hard things should be discoverably-solvable.

    No, just imagine this for a second: you are manipulating a quite complex graph by issuing calls from a bunch of rather obscure set of functions, not knowing what will happen exactly, simply hoping, each time, that everything will be alright.

    If this doesn't make you feel wretched, I don't know what can.

    It's just a fucking graph. And it just needs the right fucking tool to let you change it, safely, with no tricky bullshit or second-guessing.

    It's not asking for much. It's the only way it should be.

    So, when you are doing something in a version control system, you ought to be constantly seeing what the state is.
> Git sucks.

No it does not, which kind of invalidates the rest of the rant.

> Isn't It Obvious That C Programmers Wrote Git?

Yes, because it actually works.

write something better and have the world switch to it.

meanwhile, i'll go to the kitchen get some pop-corn while you prove your point.