View all files | ||||
This repository contains a set of notes I’ve compiled while working with Git across different projects and teams.
Rather than documenting every possible command, the focus here is on the patterns that tend to matter most in real engineering work: keeping history readable, structuring branches sensibly, recovering work safely, and reducing friction when collaborating with others.
If you already know the basic Git commands but want to develop more reliable habits around version control, you may find these notes useful.
I did not put this repository together as a command reference or a quick cheat sheet. The intention was to create something closer to a working reference — a place I can return to when building features, reviewing code, investigating problems, or tidying up history before merging a branch.
The material is organised into three levels:
The goal is to make Git usage more deliberate. Knowing the commands is useful, but understanding the judgement behind them matters far more.
For engineers who want a steady starting point.
For engineers who already use Git regularly and want cleaner habits.
For situations where more control and deeper understanding are needed.
The workflows described here are guided by a few simple ideas:
After using Git across different projects, I realised the difficult part is rarely remembering a command.
The real challenge is keeping the history understandable for the next person who reads it — including your future self.
That is why these notes focus more on judgement than syntax:
A few Git problems appear repeatedly in team environments:
Most Git issues are recoverable, but they are far easier to resolve when the workflow is disciplined from the start.
Maintained by Ami