a _git_add :add A _git_add :add -A AS : |git add -A && git stash b _git_branch :branch bd _git_branch :branch -d bd- : |ref="$( git rev-parse --symbolic-full-name @{-1} )"; git branch -d "${ref#refs/heads/*}" "$@" bv _git_branch :branch -vv B _git_bisect :bisect Bs _git_bisect :bisect start Bg _git_bisect :bisect good Bb _git_bisect :bisect bad Br _git_bisect :bisect reset c _git_commit :commit ca _git_commit :commit --amend co _git_checkout :checkout C _git_commit :commit -am CS _git_commit :commit -S -am d _git_diff :diff ds _git_diff :diff --stat f _git_fetch :fetch L _git_log :log --show-signature Ld _git_log :log --show-signature --decorate Lf _git_log :log --show-signature --first-parent Lg _git_log :log --show-signature --graph Lgd _git_log :log --show-signature --graph --decorate Lm _git_log :log --show-signature --merges Ln _git_log :log --show-signature --no-merges m _git_merge :merge ma : :merge --abort mm _git_merge :merge --no-ff M _git_submodule :submodule Mi _git_submodule :submodule update --init --recursive Mu _git_submodule :submodule update --recursive MP _git_submodule :submodule update --remote --recursive p _git_push :push pd- : |ref="$( git rev-parse --symbolic-full-name @{-1} )"; git push "${1:-origin}" :"${ref#refs/heads/*}" pf _git_push :push --force-with-lease pu _git_push :push --set-upstream P _git_pull :pull Pr _git_pull :pull --rebase=preserve Prp _git_pull |git pull --rebase=preserve && git push r _git_reset :reset r@ _git_reset :reset @ r@: _git_reset :reset @ :/ r@* _git_reset :reset @ * rh _git_reset :reset HEAD R _git_rebase :rebase Ri _git_rebase :rebase --interactive Ra _git_rebase :rebase --abort Rc _git_rebase :rebase --continue s : :status --short S _git_stash :stash Sa _git_stash :stash apply Sl _git_stash :stash list Sp _git_stash :stash pop Ss _git_stash :stash show t : tig T _git_tag :tag - : :checkout - -- : |cd "$( git rev-parse --show-toplevel 2>/dev/null )" ? : __git-short_help