Advance your understanding of how Git works under the hood, master workflows, branching, merging and rebasing your work for easy and successful project collaboration!
This book dives into the inner workings of Git, what particular Git operations actually do, and will walk you through some interesting problem-solving scenarios when Git gets cranky. You’ll build up some mental models to understand what’s going on when Git complains about things to help you solve similar issues on your own in the future.
Git is one of those wonderful, elegant tools that does an amazing job of abstracting the underlying mechanism from the front-end workings. To pull changes from the remote down to the local, you execute git pull. To commit your changes in your local repository, you execute git commit. To push commits from your local repository to the remote repository, you execute git push. The front end does an excellent job of mirroring the mental model of what’s happening to your code. But as you would expect, a lot is going on underneath. The nice thing about Git is that you could spend your entire career not knowing how the Git internals work, and you’d get along quite well. But being aware of how Git manages your repository will help cement that mental model and give a little more insight into why Git does what it does.
Take a deep dive into:
How Git actually works: After using Git for a while it’s good to discover the whys behind all of the things. Rebasing: Rebasing and squashing doesn’t have to be scary; it’s quite a useful and advanced way of merging code to support your collaborative workflow. Undoing what you’ve done: Most frustration with Git comes from not being able to undo something that you’ve screwed up. But Git has lots of ways you can go back and recover from a weird merge or commit state. Workflows in Git: Working with Git requires some rules to make sure things go smoothly across development teams. Learn the most common workflows and how to decide which one to use. And more!