今天才发现 zsh 已经将大多数常见的 git 命令做了 alias 操作. alias | grep git
g=git
ga='git add'
gb='git branch'
gba='git branch -a'
gc='git commit -v'
'gc!'='git commit -v --amend'
gca='git commit -v -a'
'gca!'='git commit -v -a --amend'
gcl='git config --list'
gclean='git reset --hard && git clean -dfx'
gcm='git checkout master'
gco='git checkout'
gcount='git shortlog -sn'
gcp='git cherry-pick'
gd='git diff'
gf='git ls-files | grep'
gg='git gui citool'
gga='git gui citool --amend'
ggpnp='git pull origin $(current_branch) && git push origin $(current_branch)'
ggpull='git pull origin $(current_branch)'
ggpur='git pull --rebase origin $(current_branch)'
ggpush='git push origin $(current_branch)'
git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'
gk='gitk --all --branches'
gl='git pull'
glg='git log --stat --max-count=5'
glgg='git log --graph --max-count=5'
glgga='git log --graph --decorate --all'
glo='git log --oneline'
glp=_git_log_prettily
gm='git merge'
gmt='git mergetool --no-prompt'
gp='git push'
gpoat='git push origin --all && git push origin --tags'
gr='git remote'
grba='git rebase --abort'
grbc='git rebase --continue'
grbi='git rebase -i'
grh='git reset HEAD'
grhh='git reset HEAD --hard'
grmv='git remote rename'
grrm='git remote remove'
grset='git remote set-url'
grt='cd $(git rev-parse --show-toplevel || echo ".")'
grup='git remote update'
grv='git remote -v'
gsd='git svn dcommit'
gsr='git svn rebase'
gss='git status -s'
gst='git status'
gsts='git stash show --text'
gup='git pull --rebase'
gwc='git whatchanged -p --abbrev-commit --pretty=medium'