Live data from Hacker News

Git is too hard

changelog.com

201–210 of 821 posts

Re: Git is too hard

#201
I think the best thing you can do for yourself as a git user is to learn what things are easily to reverse, what things are hard to reverse and what things are irreversible.

In general as long as you have a clean remote you can fuck around without worry because you can just throw everything away and start over.

Re: Git is too hard

#202
post #193
post #104

Earlier quoted context omitted.

With that attitude, I definitely wouldn't want to work with you either. I also love the assumptions about me and the thinly veiled ad-hominem :-) We should be able to admit that a tool has a crap UI and cut out the macho geek attitude. I've been working in this field for about of 15 years and the amount of needless pain we endure from core tools is unimaginable. I'm waaaay past the learning curve for Unix tools, git,…

I'm really not sure what to say to this. I'm guessing you're not an engineer. It's only product management types that cast around technical criticisms without proposing any solutions so I guess you are of that strain. I don't believe you're stupid, far from it but I think your perspective needs some correction. We've been using VCS fairly universally for the last 25-30 or so. There's been RCS, CVS, SVN, Perforce, Cle…

> [you] types

> of that strain [of people]

> injured animal grandstanding

...

Plus, sooo many assumptions in there. As an engineer, I know that assumptions are bad :-)

Re: Git is too hard

#203
post #57

I've read this as a rant about why we should want a fancier SVN. Unsurprising coming from someone working at Github, but hardly representative of what git was made for and can actually do. Centralisation is easier, but generally the wrong solution. Git is distributed by design , and most of the difficulties come from that. Github makes git easier by making it centralised, and that makes it easier to use, but actually…

It's even worse. Fancier or not, centralized systems are actually bad for usability in a very important way: Users will always manage to break their local checkout or clone somehow. With git (and many other, but not all) decentralized systems, just using a plain filesystem copy as a fallback or backup, the user is easily able to recover. There are better ways, but this is an obvious one that works without the need for extensive tools, training or docs. With centralized systems, or even GitHub, the user is bound to commit/push(--force)/sync at some point, breaking the central instance, which is much harder to recover from.

Re: Git is too hard

#204

Git also sucks when someone in your team drags their feet and doesn't use it properly. And when your team is mostly made of non pure comp. science background who have learnt SQL on the job, trying to get them to stick to git is really difficult. There almost needs to be something in between that satisfies this kind of intermediate technical ability and interest. I think Atlassian could come up with something suitable…

Not sure why you think using git has anything to do with having studied computer science at university or learning SQL on the job.

I studied theoretical physics and learnt SQL for a job (as I'm sure most do) but have no issue with git. In any case, you have to learn how git works to use it effectively. That doesn't come by magic when doing comp sci, as far as I know.

Re: Git is too hard

#205
post #89

Earlier quoted context omitted.

I hope I never end up working with you bud. “Where is the code?” “Oh I’m sorry I couldn’t do it because it was hard can I still be paid please?”

I refer to my comment from a couple of days ago: https://news.ycombinator.com/item?id=25080013

That's just stupid. We're not talking about "users" here, we're talking about "engineers". If you can't grasp the complexity of Git, you've no business using it. You need to be working in an environment with a centralised VCS and somebody administering it.

Unless you mean just VCS for yourself, in which case you could probably just use anything you liked rather than complaining about it ...

And it's not manliness to say that if you can't grasp complexity you really shouldn't be writing code. That's self evident. It's the whole point of what we do. I'm not looking down on people who can't code - but it's horses for courses. To suggest anything else is just bonkers.

Re: Git is too hard

#206
post #55

First of all, I'm sure the author knows more about git than I do, so I don't wanna come across as trying to lecture an expert. But I do feel that his main point misses the mark. It seems to be centered around the idea that a lot of reasonable people are surprised by things git won't let them do (or, more accurately, strongly advices against doing). The problem is that most of these things are only "reasonable" from t…

Yeah I haven't had any big troubles with git since reading that text, it's very good.

Re: Git is too hard

#207
post #148

Earlier quoted context omitted.

+1 These commands will get you 99% of the way: - git status - git branch - git pull - git add - git commit - git diff - git merge - git push - git checkout For everything else there's StackOverflow, but the info in there comes with the risk of being stale. -------------- Edit commit abaeb3b4: Add missing commands and improve formatting Edit commit 842babda: Add git checkout

So this, to me, is not a 'benefit of git' it articulates in some ways how bad it is (although very powerful). Most people can get going with those 99% commands quite quickly, the problem with git is any move from the known path creates some pretty amazingly complicated scenarios. And those '1% of the time' commands blow up into time-consuming rabbit holes of complexity. Often, Stack Exchange has several answers for t…

you shouldn't change history once you make it public, how hard is that? that's the golden rule, if you promise something to be immutable, stick to your promise

Re: Git is too hard

#208

“Git gets easier once you get the basic idea that branches are homeomorphic endofunctors mapping submanifolds of a Hilbert space.” — Isaac Wolkerstorfer http://twitter.com/agnoster/status/44636629423497217

This would have been funny if indeed it would not have been technobabble.

Re: Git is too hard

#209
post #144

Earlier quoted context omitted.

>But IMO it isn't because Git is hard, but because they don't have to truly understand Git to use it. That's how easy it is. A copy&paste of my previous comment: Everybody's brain is different but I actually understand all of git's internals (the "plumbing") but it doesn't help me with the git CLI (the "porcelain"). Yes, I know that Git is a DAG (Directed Acyclic Graph), and that HEAD is a pointer, and the file forma…

Totally agree on the "staging area". I've always thought that the staging area should only activate when you `git add` or otherwise add files to it. If there are no staged files, then git commit should act like git commit -A.

Oh hell no, Visual Studio has this behaviour by default (commit all changes if nothing staged) and what we end up with is that some people keep checking in various experiments and privately modified launch config files (that should not be in the repo anyhow but that's another story related to the tools) that end up causing a lot of unnecessary merge conflicts when you pull in their changes (where you were really only expecting some other part).

Re: Git is too hard

#210
post #6

I don't agree at all. Git is the simplest version control system I've ever used. The concept of merging, rebasing, cherry-picking, and resetting works so naturally that I'm basically going to expect this level of ease of use from any VCS I use going forward. That being said, I know there are some who have trouble with Git. But IMO it isn't because Git is hard, but because they don't have to truly understand Git to us…

I've always found linear algebra to be far simpler than any other advanced mathematics. It's basically just a lot of book-keeping and consequences from that. Yet I know smart people who failed it multiple times and had to change majors to avoid it. That makes me pause before dismissing people who complain about it.

The article has a better way to assess difficulty, based on how easy it is to teach other how to use it.

Post reply on HN