Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's been over a decade and I still find this joke amusing:

> @wilshipley git gets easier once you get the basic idea that branches are homeomorphic endofunctors mapping submanifolds of a Hilbert space.

* https://twitter.com/agnoster/status/44636629423497217

(It's a 'spoof' on the Monad joke.)



Mandatory plug for the best git docs on the internet: https://git-man-page-generator.lokaltog.net

For example, ```git-dissect-tipdissects indexed local tips from all noted downstream upstreams, remotes commit graphs, etc.```

Anytime somebody is confused or stuck with Git, it's a great idea to helpfully send them some documentation links from there.


Why does any post discussing _any_ aspect of git always results in these type of comments? "git is complex", "git command line is confusing me", "life would be easier is we all used subversion".

Please let us discuss git in peace.

(Although I admit that this one was funny)


>Why...

Because lots of people don't want to learn git. They want to bungle through it the same way they bungle through most of the software they touch. People who work with software professionally are very adept at bungling. Even through complicated professional software that other users would need training for. But git is resistant. Even rote memorization won't let you hide completely from learning git. There's a steep learning curve before you can half-ass it.

Depending on perspective this is either a damning indictment of git, or just another day at the office.

I've been helping people learn git for over a decade now. Unironically the easiest to teach are interns.


I am using git as a version control system via Tortoise GIT which does a great job of exposing the minimum required functionality of git (maybe a bit more than minimum) and it is only when something goes wrong or I need advanced features that I have to fall back on git command line. So 99.99% of the time I use 10% of git functionality. Even if I did learn all of git (and I doubt there are many people that can make that claim), I would probably forget most of it by the next time I needed to use a particular feature. The main thing that should be explained at the start of any git related tutorial is how git handles the full workflow (from remote to local to work copy and back) because that is one thing that is missing but once you know it the rest becomes easy to understand.


> Because lots of people don't want to learn git.

The thing is that something as trivial as version control should not require that much learning. Pretty much all version control systems other than git had already achieved that (by not providing such a vast "feature surface").

Of course this isn't exactly git's fault. It was developed specifically for Linux kernel developers, not (for instance) for artists on a game development team. The problem is that nowadays, people start to get the impression that git is the only version control system, and want to use it for things it wasn't designed for.


Version control contains problems that are not trivial. Git exposes the right parts of the problems and conflicts for the user, that are in no way trivial for a computer and require human decisions on what should be done with them.


For SOME projects, that rely on a truly distributed model.

Most don't.

Most at GITHUB don't. It's why they use github.


> "git is complex"

Because it is.

> "git command line is confusing me"

Because it does.

Life being easier... maybe, I'm sure it would be for most projects. For some where git is required, likely not. I'd reckon MOST projects don't really need a DVCS; they have the much easier mental model and work quite well with a centralized "source of truth" that people can take from or give code to (coughgithubcough)


We can stop with these comments after another system displaces git as the dominant player.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: