Git is one of the main tools we as developers use everyday. Many of us were never really taught how git works, but rather learned enough commands off by heart to be dangerous.
This repository provides the basis for a git workshop that I have run a number of times at various companies where I've worked, and which has always been appreciated.
Though we exclusively use the git command line in the workshop I recommend getting intimately familiar with the git integration available in your editor of choice.
- tpope/vim-fugitive for vim/neovim
- GitLens and Git Graph for Visual Studio Code.
The workshop contains the following modules:
- (If you don't want to run on your own system): Setting up a docker container to work in
- Creating a basic git config
- What is a commit? How do I make a good one?
- What is a branch? How do I use them effectively?
- How do I recover from mistakes?
- Merge vs. Rebase
- Maintaining a clean history
- Cherry-pick
- Putting it all together for easier reviews
I will of course share nice configuration settings and tips along the way. If the workshop takes longer than the alotted time I'll invite to a follow-up meeting later on.
Welcome to my git workshop! 😄