Skip to content
Ilya Isaev edited this page Jan 8, 2016 · 18 revisions

The git Plugin

The git plugin provides many aliases and a few useful functions.

Enable it by adding git to the plugins array before sourcing OMZ (see Plugins).

Aliases

Alias Command
g git
ga git add
gaa git add --all
gapa git add --patch
gb git branch
gba git branch -a
gbda git branch --merged | command grep -vE "^(*|\smaster\s$)" | command xargs -n 1 git branch -d
gbl git blame -b -w
gbnm git branch --no-merged
gbr git branch --remote
gbs git bisect
gbsb git bisect bad
gbsg git bisect good
gbsr git bisect reset
gbss git bisect start
gc git commit -v
gc! git commit -v --amend
gca git commit -v -a
gcam git commit -a -m
gca! git commit -v -a --amend
gcan! git commit -v -a -s --no-edit --amend
gcb git checkout -b
gcf git config --list
gcl git clone --recursive
gclean git clean -df

| | gcm | git checkout master | | gcmsg | git commit -m | | gco | git checkout | | gcount | git shortlog -sn | | gcp | git cherry-pick | | gcs | git commit -S | | gd | git diff | | gdca | git diff --cached | | gdt | git diff-tree --no-commit-id --name-only -r | | gdw | git diff --word-diff | | gf | git fetch | | gfa | git fetch --all --prune | | gfo | git fetch origin | | gg | git gui citool | | gga | git gui citool --amend | | ggpull | ggl | | ggpur | ggu | | ggpush | ggp | | ggsup | git branch --set-upstream-to = origin/$(current_branch) | | gignore | git update-index --assume-unchanged | | gignored | git ls-files -v | grep "^:lower:" | | git-svn-dcommit-push | git svn dcommit && git push github master:svntrunk | | gk | \gitk --all --branches | | gke | \gitk --all $(git log -g --pretty = format:%h) | | gl | git pull | | glg | git log --stat --color | | glgg | git log --graph --color | | glgga | git log --graph --decorate --all | | glgm | git log --graph --max-count = 10 | | glgp | git log --stat --color -p | | glo | git log --oneline --decorate --color | | glog | git log --oneline --decorate --color --graph | | glol | git log --graph --pretty = format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit | | glola | git log --graph --pretty = format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --all | | glp | _git_log_prettily | | gm | git merge | | gmom | git merge origin/master | | gmt | git mergetool --no-prompt | | gmtvim | git mergetool --no-prompt --tool = vimdiff | | gmum | git merge upstream/master | | gp | git push | | gpd | git push --dry-run | | gpoat | git push origin --all && git push origin --tags | | gpristine | git reset --hard && git clean -dfx | | | gpu | git push upstream | | gpv | git push -v | | gr | git remote | | gra | git remote add | | grb | git rebase | | grba | git rebase --abort | | grbc | git rebase --continue | | grbi | git rebase -i | | grbm | git rebase master | | grbs | git rebase --skip | | 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 ".") | | gru | git reset -- | | grup | git remote update | | grv | git remote -v | | gsb | git status -sb | | gsd | git svn dcommit | | gsi | git submodule init | | gsps | git show --pretty = short --show-signature | | gsr | git svn rebase | | gss | git status -s | | gst | git status | | gsta | git stash | | gstaa | git stash apply | | gstd | git stash drop | | gstl | git stash list | | gstp | git stash pop | | gsts | git stash show --text | | gsu | git submodule update | | gts | git tag -s | | gunignore | git update-index --no-assume-unchanged | | gunwip | git log -n 1 | grep -q -c "--wip--" && git reset HEAD~1 | | gup | git pull --rebase | | gupv | git pull --rebase -v | | gvt | git verify-tag | | gwch | git whatchanged -p --abbrev-commit --pretty = medium | | gwip | git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit -m "--wip--" |

Deprecated Aliases

These are aliases that have been removed, renamed, or otherwise modified in a way that may, or may not, receive further support.

Alias Command Modification
gap git add --patch new alias gapa
gcl git config --list new alias gcf
gdc git diff --cached new alias gdca
gdt git difftool no replacement
ggpull git pull origin $(current_branch) new alias ggl (ggpull still exists for now though)
ggpur git pull --rebase origin $(current_branch) new alias ggu (ggpur still exists for now though)
ggpush git push origin $(current_branch) new alias ggp (ggpush still exists for now though)
gk gitk --all --branches now aliased to \gitk --all --branches
glg git log --stat --max-count = 10 now aliased to git log --stat --color
glgg git log --graph --max-count = 10 now aliased to git log --graph --color
gwc git whatchanged -p --abbrev-commit --pretty = medium new alias gwch
gwip git add -A; git ls-files --deleted -z | xargs -r0 git rm; git commit -m "--wip--" now aliased to git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit -m "--wip--"

Functions

Current

Command Description
current_branch Return the name of the current branch
current_repository Return the names of the current remotes

WiP

These features allow to pause a branch development and switch to another one ("Work in Progress", or wip). When you want to go back to work, just unwip it.

Command Description
work_in_progress Echoes a warning if the current branch is a wip
gwip Commit wip branch
gunwip Uncommit wip branch

Clone this wiki locally