You've been on this quest for a while now. Your trusty source control system is an old friend but also still an enigma at times. There are so many things that it can do for you, but you find yourself in the same old rut in your day-to-day: git status
, git add
, git commit
, maybe a little git log
thrown in there. Truth is, most Code Ninjas are mostly Git Fu Grasshoppers; you're not alone. You need to see these tricks, though:
- So you know your way around a simple
git rebase
okay... but what is that really doing? - What happens when someone else rebases your base branch out from under you?
- You've heard of them, but what are all these "cherries" and why do they need "picking"? Or squashing? Do you even squash cherries?
- What do you do when you really futz up a merge... or a rebase… or when someone else does and you have to fix it? Isn't there a better way to resolve these conflicts? Again…
- How do I really find out whodunnit for that post-mortem report… or which commit to even
revert
to begin with?
The thing is, Git Fu is hard to master. The man
pages, even the online ones, are hard to read and navigate, and you have to know what you're looking for to even start finding the right answers. I'll show you some common use cases that I regularly encounter and the tips, tricks, and techniques that you can use to become a Git Fu Master.
Good abstract. The only concern I might have is the length. See if you can condense the content a bit.