7. Git from the Bottom Up by John Wiegley
Git from the Bottom Up is an introduction to the architecture and design of the Git content manager.
This book seeks to advance the reader’s understanding of this powerful content tracking system, and reveal a bit of the simplicity underlying it — however dizzying its array of options may appear from the outside. There are chapters on the repository, the Index, resetting. The book them goes on to cover stashing and the reflog. reflog is a kind of meta-repository that records — in the form of commits — every change you make to your repository. The book closes with links to half a dozen articles that should further your interest to learn and master Git.
There’s a GitHub Code Repository here.
8. Pro Git Reedited based on work by Scott Chacon
This is an edited version of Pro Git, Scott Chacon’s excellent book which received our strongest recommendation.
For this fork, there’s a GitHub repository available.
Pro Git Reedited is licensed under the Creative Commons Attribution-Non Commercial-Share Alike 3.0 license.
9. Git Workflows by Yan Pritzker
Git Workflows gives you enough of an overview so that you can dive right in.
It also provides the reader with a handy list of aliases making certain features of Git easier to work with.
The author passed away in September 2015.
This books covers the following areas:
- Setup & Repo Overview – a brief review of how a git repository is structured. Set up your git environment, and obtain a simplified Git alias list.
- Keeping your Changesets Clean – treat your changesets like you do your code, by keeping them clean, cohesive, and refactoring them when needed. Learn to use topic branches as workspaces to work on multiple features or bugs, and to combine or tease apart changes to keep patch history clean.
- Time Traveling for Fun and Profit – shows you how to use your repository history to jump back and forth between different commit states, revert changes, and search the repository for commits.
- Remote Collaboration and Code Review – talks about remote collaboration and code review.
- Release Management – focuses on release management including tagging, branching, and cherry picking commits between dev and release branches.
- Sneaking Git Through the Backdoor – introducing Git into your organization through an unobtrusive bottom-up process, and using Git while everyone else is using subversion.