Follow along or just sit back and enjoy a live, hands on tutorial on the power routines of experienced git users. We'll explore with real world examples how to amend commits, do an interactive rebase - and why would you want to do one in the first place, how to solve conflicts without any merge tools, the power of less known merge strategies, how to do interactive commits, and much more.
Part 1/8: Introduction
- Who am I?
- Content overview.
- Choice of test project.
Part 2/8: Housekeeping
- Find my aliases here.
- Enhance your shell with liquidprompt.
- Start with an empty commit.
- Short cuts to list commits with nice annotations:
git log --decorate --oneline git log --decorate --numstat
Part 3/8: Amending and rebasing
- Amend a commit.
- Reset a commit to perform a rename.
- Different resets affect different parts of a git repository.
Part 4/8: Interactive rebase
How to perform an interactive rebase to remove a binary file stuck in the repository
Part 5/8: Solving conflicts
In this 5th part of the course we'll show a few concepts useful when solving merge and rebase conflicts with an interactive example on how to solve one.
--theirs, conflict markers and what's the process
needed to solve a conflict using Git.
Part 6/8: What is a merge and alternative merge strategies
We cover the basics of what a merge is in Git and we show the use of a couple of less known merge strategies like the "ours" merge strategy and the "octopus" strategy.
Part 7/8: Git interactive add
In this part we show how to perform and interactive add using Git. That is splitting the contents of some change across to more semantically meaningful commits.
Part 8/8: How to use Git stash
How to use git stash to solve common workflow situations, swap context with ease and smoothness and look cool to your colleagues.
Slides of the course
Part of the footage of the session was recorded at AtlasCamp.