+++ title = 'git usage notes' +++ ## Documentation * Official reference: https://git-scm.com/docs ## Commands I often forget ### Committing Rebase the last 3 commits: ``` git rebase -i HEAD~3 ``` Rebase all commits: ``` git rebase -i --root ``` ### Working with remotes Hard reset from remote: ``` git fetch git reset --hard origin/master ``` ### Searching commits Search for commits containing text: ``` git log --grep="abc" ``` Case-insensitive version: ``` git log -i --grep="abc" ``` Search by author ``` git log --author="guy" ``` List contributors by commit count: ``` git shortlog --summary --numbered --all --no-merges ```