Alias básicos
git config --global alias.st status
git config --global alias.ci commit
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.df diff
git config --global alias.dfc 'diff --cached'
Uso: git st en vez de git status, git ci -m "msg" en vez de git commit.
Alias de log
git config --global alias.lg "log --graph --oneline --all --decorate"
git config --global alias.lgd "log --graph --pretty=format:'%C(yellow)%h%Creset %C(blue)%ad%Creset %s %C(green)(%an)%Creset' --date=short"
git config --global alias.lgs "log --stat --summary"
git config --global alias.lol "log --oneline --graph"
git config --global alias.tree "log --graph --oneline --all --decorate --simplify-by-decoration"
Alias de commit
git config --global alias.amend "commit --amend --no-edit"
git config --global alias.undo "reset --soft HEAD~1"
git config --global alias.redo "commit -c ORIG_HEAD"
git config --global alias.fixup "!git add -A && git commit --fixup"
git config --global alias.squash "rebase -i --autosquash"
Alias de ramas
git config --global alias.merged "branch --merged"
git config --global alias.unmerged "branch --no-merged"
git config --global alias.cleanup "branch --merged | grep -v \"\\*\" | xargs -n 1 git branch -d"
git config --global alias.rename "branch -m"
git config --global alias.delete "branch -D"
Alias de stash
git config --global alias.sh stash
git config --global alias.shp "stash pop"
git config --global alias.shs "stash save"
git config --global alias.shl "stash list"
Alias de remoto
git config --global alias.publish "!git push -u origin $(git branch --show-current)"
git config --global alias.unpublish "!git push origin :$(git branch --show-current)"
git config --global alias.sync "!git fetch upstream && git rebase upstream/main"
Alias de búsqueda
git config --global alias.find "!git log --oneline --grep"
git config --global alias.grep "grep -n"
git config --global alias.track "log --oneline --graph --all"
El archivo completo (~/.gitconfig)
[alias]
# Status y commit
st = status
ci = commit
co = checkout
br = branch
df = diff
dfc = diff --cached
amend = commit --amend --no-edit
undo = reset --soft HEAD~1
# Log
lg = log --graph --oneline --all --decorate
lgd = log --graph --pretty=format:'%C(yellow)%h%Creset %C(blue)%ad%Creset %s %C(green)(%an)%Creset' --date=short
lol = log --oneline --graph
tree = log --graph --oneline --all --decorate --simplify-by-decoration
# Ramas
merged = branch --merged
unmerged = branch --no-merged
cleanup = !git branch --merged | grep -v \"\\*\" | xargs -n 1 git branch -d
delete = branch -D
# Remoto
publish = !git push -u origin $(git branch --show-current)
sync = !git fetch upstream && git rebase upstream/main
# Stash
sh = stash
shp = stash pop
shl = stash list
# Búsqueda
find = !git log --oneline --grep
today = log --oneline --since="midnight"
Agrega estos alias hoy y multiplica tu velocidad en Git.