git
A git aliases plugin for Oh My Fish and Fisher based loosely on the
Oh My Zsh Git Plugin.

Install
oh-my-fish:
$ omf install https://github.com/jhillyerd/plugin-git
fisher:
$ fisher install jhillyerd/plugin-git
Default branch name
plugin-git respects init.defaultBranch setting that was introduced in git 2.28.
The order for resolving the default branch name is as follows:
init.defaultBranch if it is set and the branch exists
main if it exists
master as fallback
Usage
Bisect
| Abbreviation |
Command |
| gbs |
git bisect |
| gbsb |
git bisect bad |
| gbsg |
git bisect good |
| gbsr |
git bisect reset |
| gbss |
git bisect start |
Branch
| Abbreviation |
Command |
| gb |
git branch -vv |
| gba |
git branch -a -v |
| gban |
git branch -a -v --no-merged |
| gbd |
git branch -d |
| gbD |
git branch -D |
| gbda |
delete all branches merged in current HEAD |
| gbage |
list local branches and display their age |
| ggsup |
git set upstream to origin/current-branch |
| grename |
rename old branch to new, including in origin remote |
Checkout
| Abbreviation |
Command |
| gco |
git checkout |
| gcod |
git checkout develop |
| gcom |
git checkout (__git.default_branch) |
| gcb |
git checkout -b |
Commit
| Abbreviation |
Command |
| gc |
git commit -v |
| gc! |
git commit -v --amend |
| gcn! |
git commit -v --no-edit --amend |
| gca |
git commit -v -a |
| gca! |
git commit -v -a --amend |
| gcan! |
git commit -v -a --no-edit --amend |
| gcv |
git commit -v --no-verify |
| gcav |
git commit -a -v --no-verify |
| gcav! |
git commit -a -v --no-verify --amend |
| gcm |
git commit -m |
| gcam |
git commit -a -m |
| gscam |
git commit -S -a -m |
| gcfx |
git commit --fixup |
Diff
| Abbreviation |
Command |
| gd |
git diff |
| gdca |
git diff --cached |
| gds |
git diff --stat |
| gdsc |
git diff --stat --cached |
| gdt |
list changed files |
| gdw |
git diff --word-diff |
| gdwc |
git diff --word-diff --cached |
| gdto |
git difftool |
| gdv |
pipe git diff to view command |
Flow
| Abbreviation |
Command |
| gfb |
git flow bugfix |
| gff |
git flow feature |
| gfr |
git flow release |
| gfh |
git flow hotfix |
| gfs |
git flow support |
| gfbs |
git flow bugfix start |
| gffs |
git flow feature start |
| gfrs |
git flow release start |
| gfhs |
git flow hotfix start |
| gfss |
git flow support start |
| gfbt |
git flow bugfix track |
| gfft |
git flow feature track |
| gfrt |
git flow release track |
| gfht |
git flow hotfix track |
| gfst |
git flow support track |
| gfp |
git flow publish |
Log
| Abbreviation |
Command |
| gcount |
git shortlog -sn |
| glg |
git log --stat |
| glgg |
git log --graph |
| glgga |
git log --graph --decorate --all |
| glo |
git log --oneline --decorate --color |
| gloo |
git log --pretty=format:'%C(yellow)%h %Cred%ad %Cblue%an%Cgreen%d %Creset%s' --date=short |
| glog |
git log --oneline --decorate --color --graph |
| gloga |
git log --oneline --decorate --color --graph --all |
| glom |
git log --oneline --decorate --color (__git.default_branch).. |
| glod |
git log --oneline --decorate --color develop.. |
| glp |
git log at requested pretty level |
| gwch |
git whatchanged -p --abbrev-commit --pretty=medium |
Push & Pull
| Abbreviation |
Command |
| gl |
git pull |
| ggl |
pull origin current-branch |
| gup |
git pull --rebase |
| gupv |
git pull --rebase -v |
| gupa |
git pull --rebase --autostash |
| gupav |
git pull --rebase --autostash -v |
| glr |
git pull --rebase |
| gp |
git push |
| gp! |
git push --force-with-lease |
| gpo |
git push origin |
| gpo! |
git push --force-with-lease origin |
| gpv |
git push --no-verify |
| gpv! |
git push --no-verify --force-with-lease |
| ggp |
push origin current-branch |
| ggp! |
ggp --force-with-lease |
| gpu |
ggp --set-upstream |
| gpoat |
push all + tags to origin |
| ggpnp |
pull & push origin current-branch |
Rebase
| Abbreviation |
Command |
| grb |
git rebase |
| grba |
git rebase --abort |
| grbc |
git rebase --continue |
| grbi |
git rebase --interactive |
| grbm |
git rebase (__git.default_branch) |
| grbmi |
git rebase (__git.default_branch) --interactive |
| grbmia |
git rebase (__git.default_branch) --interactive --autosquash |
| grbd |
git rebase develop |
| grbdi |
git rebase develop --interactive |
| grbdia |
git rebase develop --interactive --autosquash |
| grbs |
git rebase --skip |
| ggu |
fetch & rebase current-branch on top of the upstream branch |
Remote
| Abbreviation |
Command |
| gr |
git remote -vv |
| gra |
git remote add |
| grmv |
git remote rename |
| grpo |
git remote prune origin |
| grrm |
git remote remove |
| grset |
git remote set-url |
| grup |
git remote update |
| grv |
git remote -v |
Stash & Work in Progress
| Abbreviation |
Command |
| gsta |
git stash |
| gstd |
git stash drop |
| gstl |
git stash list |
| gstp |
git stash pop |
| gsts |
git stash show --text |
| gwip |
commit a work-in-progress branch |
| gunwip |
uncommit the work-in-progress branch |
Tags
| Abbreviation |
Command |
| gts |
git tag -s |
| gtv |
git tag | sort -V |
| gtl |
list tags matching prefix |
Local Files
| Abbreviation |
Command |
| ga |
git add |
| gaa |
git add --all |
| gau |
git add --update |
| gapa |
git add --patch |
| grm |
git rm |
| grmc |
git rm --cached |
| grs |
git restore |
| grss |
git restore --source |
| grst |
git restore --staged |
Worktree
| Abbreviation |
Command |
| gwt |
git worktree |
| gwta |
git worktree add |
| gwtls |
git worktree list |
| gwtlo |
git worktree lock |
| gwtmv |
git wortree remove |
| gwtpr |
git worktree prune |
| gwtulo |
git worktree unlock |
Everything Else
| Abbreviation |
Command |
| g |
git |
| gap |
git apply |
| gbl |
git blame -b -w |
| gcf |
git config --list |
| gcl |
git clone |
| gclean |
git clean -di |
| gclean! |
git clean -dfx |
| gclean!! |
git reset --hard; and git clean -dfx |
| gcp |
git cherry-pick |
| gcpa |
git cherry-pick --abort |
| gcpc |
git cherry-pick --continue |
| gignore |
git update-index --assume-unchanged |
| gignored |
list temporarily ignored files |
| gf |
git fetch |
| gfa |
git fetch --all --prune |
| gfm |
git fetch origin (__git.default_branch) --prune; and git merge FETCH_HEAD |
| gfo |
git fetch origin |
| gm |
git merge |
| gmt |
git mergetool --no-prompt |
| gmom |
git merge origin/(__git.default_branch) |
| grev |
git revert |
| grh |
git reset HEAD |
| grhh |
git reset HEAD --hard |
| grhpa |
git reset --patch |
| grt |
cd into the top of the current repository or submodule |
| gsh |
git show |
| gsd |
git svn dcommit |
| gsr |
git svn rebase |
| gss |
git status -s |
| gst |
git status |
| gsu |
git submodule update |
| gsur |
git submodule update --recursive |
| gsuri |
git submodule update --recursive --init |
| gsw |
git switch |
| gswc |
git switch --create |
| gunignore |
git update-index --no-assume-unchanged |
License
MIT © James Hillyerd et al