Git in Practice is a collection of 66 tested cookbook-style techniques that will optimize the way you and your team manage your development projects. The book begins with a brief reminder of the core version control concepts you need when using Git and moves on to the high-value features you may not have explored yet. Then, you'll dig into cookbook-style techniques like history visualization, advanced branching, and rewriting history each presented in a problem-solution-discussion format. Finally you'll work out how to use Git to its full potential through configuration, team workflows, submodules, and using GitHub pull requests effectively. Git in Practice is a collection of battle-tested techniques designed to optimize the way you and your team manage development projects. After a brief overview of Git’s core features, this practical guide moves quickly to high-value topics like history visualization, advanced branching and rewriting, optimized configuration, team workflows, submodules, and how to use GitHub pull requests. Written in an easy-to-follow Problem/Solution/Discussion format with numerous diagrams and examples, it skips the theory and gets right to the nitty-gritty tasks that will transform the way you work.
About the Technology
Git is a source control system, but it’s a lot more than just that. For teams working in today’s agile, continuous delivery environments, Git is a strategic advantage. Built with a decentralized structure that’s perfect for a distributed team, Git manages branching, committing, complex merges, and task switching with minimal ceremony so you can concentrate on your code.
About the Book
Written for developers familiar with version control and ready for the good stuff in Git.
Team interaction strategies and techniques
Replacing bad habits with good practices
Juggling complex configurations
Rewriting history and disaster recovery
About the Author
Mike McQuaid is a software engineer at GitHub. He’s contributed to Qt and the Linux kernel, and he maintains the Git-based Homebrew project.