If you use git daily, you’re probably typing the same 5-10 commands hundreds of times a week. Git aliases fix that.
Setup
Add these to your ~/.gitconfig under [alias]:
[alias] # Status & info s = status -sb l = log --oneline -20 ll = log --oneline --graph --all -30
# Staging a = add aa = add -A ap = add -p
# Commits c = commit cm = commit -m ca = commit --amend --no-edit cam = commit --amend
# Branches co = checkout cb = checkout -b bd = branch -d bD = branch -D
# Push & pull p = push pf = push --force-with-lease pl = pull --rebase
# Diff d = diff ds = diff --staged dn = diff --name-only
# Stash st = stash stp = stash pop stl = stash list
# Reset unstage = reset HEAD -- undo = reset --soft HEAD~1The Ones I Use Most
git s — Compact Status
$ git s## main...origin/main M src/components/Header.astro?? src/content/blog/new-post.mdThe -sb flag gives you branch info and short format. No noise, just what changed.
git l — Quick Log
$ git la1b2c3d Add dark mode togglee4f5g6h Fix header alignmenti7j8k9l Update dependenciesTwenty commits, one line each. Enough to orient yourself without scrolling.
git ap — Patch Add
The most underused git command. git add -p lets you stage individual chunks within a file:
$ git ap# Shows each change and asks:# Stage this hunk [y,n,q,a,d,s,e,?]?This is how you make clean, focused commits instead of “fixed stuff” commits.
git undo — Soft Reset
$ git undo# Undoes the last commit but keeps all changes stagedMade a typo in the commit message? Forgot to add a file? git undo is your safety net.
git pf — Safe Force Push
$ git pf# push --force-with-lease# Force pushes BUT fails if someone else pushed firstNever use --force. Always use --force-with-lease. It prevents you from overwriting a teammate’s work.
Shell Aliases (Even Faster)
For commands you run 50+ times a day, add shell aliases too:
alias g="git"alias gs="git s"alias gc="git cm"alias gp="git p"alias gl="git l"alias gd="git d"alias ga="git aa"Now gs shows status, gc "message" commits, gp pushes. Three characters per command.
The Compound Effect
These aliases save maybe 2-3 seconds per command. But over 100+ git operations per day, that’s 5 minutes. Over a year, that’s 30+ hours — plus the cognitive load reduction of not remembering long flags.
Start with s, l, cm, and undo. Add more as you feel friction. Your future self will thank you.
Some information may be outdated