Fork me on GitHub
Credit and license

Git branch design lesson

Git can do everything but what is a good idea to do and what are bad ideas?

Many good tutorials exist that explain what is possible with Git. This lesson does not focus on what is possible with branches, but rather what strategies are advisable to simplify collaboration and code maintenance.

Prerequisites

  1. Basic understanding of Git.
  2. We build on top of Introduction to version control with Git.

Schedule

16:00 Rebase vs. merge What is the advantage of merging?
What is the advantage of rebasing?
16:10 Branch hygiene Why is the Git log history important?
16:20 Git rebase and commit squashing exercise How can we commit often and still arrive at an understandable history?
16:35 Avoiding conflicts How should we organize branches to avoid conflicts?
16:45 Branching models What is a good branch layout to simplify maintenance and release preparation?
17:00 Finish