Skip to content


Repository files navigation

Git In Practice

Git In Practice is an opinionated, intermediate/advanced-level Git book by @MikeMcQuaid.

Table of Contents

  1. Preface
  2. Introduction to Git
    1. Local Git
    2. Remote Git
  3. Git Essentials
    1. Filesystem Interactions
    2. History Visualization
    3. Advanced Branching
    4. Rewriting History and Disaster Recovery
  4. Advanced Git
    1. Personalizing Git
    2. Vendoring Dependencies as Submodules
    3. Working with Subversion
    4. GitHub Pull Requests
    5. Hosting a Repository
  5. Git Best Practices
    1. Creating a Clean History
    2. Merging vs. Rebasing
    3. Recommended Team Workflows
  6. Appendices
    1. Git Installation
    2. Creating a GitHub Account and Repository
    3. Commented Git Configuration
    4. Why Use Version Control?


You have the right to read this book through this open source repository, link others to it anywhere on the internet but not redistribute the contents of this repository outside of GitHub.


It takes a lot of time from multiple people to write a published book. While the content is available to read freely from this repository, if this content is useful to you and you can afford it, please consider buying a paper or ebook copy from Manning.


Published by Manning in 2014 and given a public GitHub repository in 2017.


If you contribute changes to this repository you assign copyright to @MikeMcQuaid and Manning Publications. If a future edition is released we may thank you in the foreword but you won't be assigned partial copyright or receive any royalties. If you're OK with that then please feel free to create pull-requests.

Thanks to all the GitInPractice contributors!


Mike McQuaid