Git Reference
Published: Mar 31, 2021
Updated: Feb 6, 2023
Updated: Feb 6, 2023
A living doc of handy git commands.
Task | Syntax |
---|---|
Init new repo | git init |
Configure local user name | git config --local user.name "<USERNAME>" |
Configure local user email | git config --local user.email "<EMAIL>" |
List local configuration | git config --local --list |
Create new branch from current branch | git checkout -b <BRANCH> |
Create remote branch from local branch | git push --set-upstream origin |
Checkout existing branch | git checkout <BRANCH> |
Delete local branch | git branch -D <BRANCH> |
Delete all local branches except for current banch | git branch | grep -v '^*' | xargs git branch -D |
Delete remote branch | git push --delete --force origin <BRANCH> |
List local branches | git branch |
List remote branches | git branch -r |
Show status | git status |
Show diff | git diff |
Stage all changes | git add --all |
Commit staged changes | git commit -m "<MESSAGE>" |
Push local branch to remote branch | git push |
Merge remote branch into local branch | git pull origin <BRANCH> |
Show commit log | git log |
Show pretty commit log | git log --oneline |
Show who last touched each line of a file | git blame <FILE> |
Unstage all changes | git reset |
Undo all modified files | git checkout . |
Delete untracked files | git clean -f -d |
Interactively rebase last n commits |
git rebase -i HEAD~n |
Cleanup local repo | git gc |
Track case-only filename changes | git mv -f |
Ignore a file that was already committed | git rm -r --cached . && git add --all |
Show short hash of latest commit where n is length |
git rev-parse --short=n HEAD |