Git命令别名
以下由zsh-plugin-git内容转载过来,以备查询使用。
git plugin
The git plugin provides many aliases and a few useful functions.
To use it, add git
to the plugins array in your zshrc file:
plugins=(... git)
Aliases
常用
Alias | Command |
---|---|
g | git |
ga | git add |
gaa | git add --all |
gcmsg | git commit -m |
-------------------- | ------------------------------------------------------------ |
ggp | git push origin $(current_branch) |
ggf | git push --force origin $(current_branch) |
gp | git push |
gl | git pull |
ggl | git pull origin $(current_branch) |
-------------------- | ------------------------------------------------------------ |
gco | git checkout |
gcb | git checkout -b |
gcm | git checkout master |
gb | git branch |
gba | git branch -a |
gcf | git config --list |
gd | git diff |
完整列表
Alias | Command |
---|---|
g | git |
ga | git add |
gaa | git add --all |
gapa | git add --patch |
gau | git add --update |
gav | git add --verbose |
gap | git apply |
gb | git branch |
gba | git branch -a |
gbd | git branch -d |
gbda | - |
gbD | 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 |
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 |
gcans! | git commit -v -a -s --no-edit --amend |
gcam | git commit -a -m |
gcsm | git commit -s -m |
gcb | git checkout -b |
gcf | git config --list |
gcl | git clone --recurse-submodules |
gclean | git clean -id |
gpristine | git reset --hard && git clean -dfx |
gcm | git checkout master |
gcd | git checkout develop |
gcmsg | git commit -m |
gco | git checkout |
gcount | git shortlog -sn |
gcp | git cherry-pick |
gcpa | git cherry-pick --abort |
gcpc | git cherry-pick --continue |
gcs | git commit -S |
gd | git diff |
gdca | git diff --cached |
gdcw | git diff --cached --word-diff |
gdct | git describe --tags $(git rev-list --tags --max-count=1) |
gds | git diff --staged |
gdt | git diff-tree --no-commit-id --name-only -r |
gdv | - |
gdw | git diff --word-diff |
gf | git fetch |
gfa | git fetch --all --prune |
gfg | - |
gfo | git fetch origin |
gg | git gui citool |
gga | git gui citool --amend |
ggf | git push --force origin $(current_branch) |
ggfl | git push --force-with-lease origin $(current_branch) |
ggl | git pull origin $(current_branch) |
ggp | git push origin $(current_branch) |
ggpnp | ggl && ggp |
ggpull | git pull origin "$(git_current_branch)" |
ggpur | ggu |
ggpush | git push origin "$(git_current_branch)" |
ggsup | git branch --set-upstream-to=origin/$(git_current_branch) |
ggu | git pull --rebase origin $(current_branch) |
gpsup | git push --set-upstream origin $(git_current_branch) |
ghh | git help |
gignore | git update-index --assume-unchanged |
gignored | - |
git-svn-dcommit-push | git svn dcommit && git push github master:svntrunk |
gk | gitk --all --branches |
gke | gitk --all $(git log -g --pretty=%h) |
gl | git pull |
glg | git log --stat |
glgp | git log --stat -p |
glgg | git log --graph |
glgga | git log --graph --decorate --all |
glgm | git log --graph --max-count=10 |
glo | git log --oneline --decorate |
glol | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' |
glols | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --stat |
glod | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' |
glods | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' --date=short |
glola | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --all |
glog | git log --oneline --decorate --graph |
gloga | git log --oneline --decorate --graph --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 |
gma | git merge --abort |
gp | git push |
gpd | git push --dry-run |
gpf | git push --force-with-lease |
gpf! | git push --force |
gpoat | git push origin --all && git push origin --tags |
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 |
grbd | git rebase develop |
grbi | git rebase -i |
grbm | git rebase master |
grbs | git rebase --skip |
grh | git reset |
grhh | git reset --hard |
groh | git reset origin/$(git_current_branch) --hard |
grm | git rm |
grmc | git rm --cached |
grmv | git remote rename |
grrm | git remote remove |
grset | git remote set-url |
grt | - |
gru | git reset -- |
grup | git remote update |
grv | git remote -v |
gsb | git status -sb |
gsd | git svn dcommit |
gsh | git show |
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 push |
gsta | git stash save |
gstaa | git stash apply |
gstc | git stash clear |
gstd | git stash drop |
gstl | git stash list |
gstp | git stash pop |
gsts | git stash show --text |
gstall | git stash --all |
gsu | git submodule update |
gts | git tag -s |
gtv | - |
gtl | gtl(){ git tag --sort=-v:refname -n -l ${1}* }; noglob gtl |
gunignore | git update-index --no-assume-unchanged |
gunwip | - |
gup | git pull --rebase |
gupv | git pull --rebase -v |
gupa | git pull --rebase --autostash |
gupav | git pull --rebase --autostash -v |
glum | git pull upstream master |
gwch | git whatchanged -p --abbrev-commit --pretty=medium |
gwip | git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign -m "--wip-- [skip ci]" |
Deprecated
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 |
Functions
Current
Command | Description |
---|---|
current_branch | Return the name of the current branch |
git_current_user_name | Returns the user.name config value |
git_current_user_email | Returns the user.email config value |
Work in Progress (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 |
Deprecated
Command | Description | Reason |
---|---|---|
current_repository | Return the names of the current remotes | Didn't work properly. Use git remote -v instead (grv alias) |
参考
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.
最后修改 December 30, 2022: add linux notes (85fc35b)