4 ms·
You don't hate git, you hate that you have to use it. And that in order to use it you have to get smarter. Smarter about computers, and smarter about managing y
by user2459 15y ago
You don't hate git, you hate that you have to use it. And that in order to use it you have to get smarter. Smarter about computers, and smarter about managing your code.
But don't be discouraged, git really is simple. It's dead simple. The command line syntax is super annoying, i'll give you that, but the underlying tech is a collection of simple concepts that meld into a complex powerful tool.
The first thing you need to do, is to stop thinking of git in terms of github. Git is designed to be a decentralized vcs, and you really need to think/learn about what that means. It's crucial. The prevalence of github means that most people will never even use it in a non centralized way, and while incredibly convenient, it undermines the learning process just a little.
The next thing you need to do, is just read progit -> http://progit.org/book/ http://progit.org/book/ . In fact that's really the first thing you should do. Stop thinking you can pick up git through osmosis and just read the damn book. At least by then if you still hate it you'll have more poignant issues to touch on.
- fruchtose 15y agoBut don't be discouraged, git really is simple. It's dead simple. The command line syntax is super annoying, i'll give you that, but the underlying tech is a collection of simple concepts that meld into a complex powerful tool. Frankly speaking, although I like Git, your post doesn't address one of the more important points, especially for beginners: The man pages are one almighty “fuck you”. I have to agree. The examples the author picked are bad, but the rest of the documentation is not much better. It's rather unfortunate, since this is supposed to be an important resource for beginners. But when I look at the page for cherry-pick and I see in the description... Given one existing commit, apply the change the patch introduces, and record a new commit that records it. This requires your working tree to be clean (no modifications from the HEAD commit). ...I can predict that newbies will have a hard time agreeing that Git is "dead simple". Because even if you understand what the command does in terms of the man page, the description does not tell you what you actually accomplish with it. Non-intuitive instructions are nearly as bad as non-existent instructions, and a beginner who wants to understand Git cherry-pick might as well ask Stack Overflow instead.