Use git add -p to interactively decide whether to stage a change

This is to avoid unexpectedly staging changes that’s not relevant - which I’ve done quite a lot via git add .

Use git rebase master -i to interactively rebase onto master before submitting a PR

Use git config --global core.editor <editor> to change editor

Enough wrestling with vim :D

Use git diff HEAD~ to review what has been committed

Use git commit --amend --no-edit to amend command without changing commit message