当前位置: 首页 > 工具软件 > git-hg > 使用案例 >

git-bash的alias别名设置

宋臻
2023-12-01

常需要设置别名时,直接使用

alias gs="git status"

输入上边的命令之后,就可以使用gs(命令)代替git status(命令),这是一种设置别名简化输入,提升效率的办法

可以根据自己日常的习惯,和自己的理解,按照自己是喜好特点定义自己的一组常用的别名缩写。

然后日常操作就会变得简单很多。

但是,如果只是如此操作,当我们关闭终端窗口的时候,重新启动之后会发现,这个别名消失了。原因是没有永久保存。

如果想永久保存,我们可以做如下操作:

ls ~/.bash_profile

查看用户目录的.bash_profile文件是否存在,如果存在直接修改,不存在这创建该文件,并编辑其内容

vi ~/.bash_profile

在该文件中写入最开始的alias 别名="命令"的信息,每行写一个。可以把所有想要设置别名的命令都列到这里。

然后保存该文件退出。此时,所有相关的别名设置基本完成。但是目前并么有马上生效,要不重启终端,要不通过命令

source ~/.bash_profile

命令执行以后,所有的别名就可以正常使用了,而且如果关掉终端再打开依然可以正常使用。

 

因为缩写确实是非常的方便,所以很多人都有这样的习惯。这里推荐一些人使用的zshell的一套别名

alias gpm='git push origin master'

alias ...=../..

alias ....=../../..

alias .....=../../../..

alias ......=../../../../..

alias 1='cd -'

alias 2='cd -2'

alias 3='cd -3'

alias 4='cd -4'

alias 5='cd -5'

alias 6='cd -6'

alias 7='cd -7'

alias 8='cd -8'

alias 9='cd -9'

alias _=sudo

alias afind='ack -il'

alias d='dirs -v | head -10'

alias g=git

alias ga='git add'

alias gaa='git add --all'

alias gapa='git add --patch'

alias gau='git add --update'

alias gb='git branch'

alias gba='git branch -a'

alias gbd='git branch -d'

alias gbda='git branch --no-color --merged | command grep -vE "^(\*|\s*(master|develop|dev)\s*$)" | command xargs -n 1 git branch -d'

alias gbl='git blame -b -w'

alias gbnm='git branch --no-merged'

alias gbr='git branch --remote'

alias gbs='git bisect'

alias gbsb='git bisect bad'

alias gbsg='git bisect good'

alias gbsr='git bisect reset'

alias gbss='git bisect start'

alias gc='git commit -v'

alias 'gc!'='git commit -v --amend'

alias gca='git commit -v -a'

alias 'gca!'='git commit -v -a --amend'

alias gcam='git commit -a -m'

alias 'gcan!'='git commit -v -a --no-edit --amend'

alias 'gcans!'='git commit -v -a -s --no-edit --amend'

alias gcb='git checkout -b'

alias gcd='git checkout develop'

alias gcf='git config --list'

alias gcl='git clone --recursive'

alias gclean='git clean -fd'

alias gcm='git checkout master'

alias gcmsg='git commit -m'

alias 'gcn!'='git commit -v --no-edit --amend'

alias gco='git checkout'

alias gcount='git shortlog -sn'

alias gcp='git cherry-pick'

alias gcpa='git cherry-pick --abort'

alias gcpc='git cherry-pick --continue'

alias gcs='git commit -S'

alias gcsm='git commit -s -m'

alias gd='git diff'

alias gdca='git diff --cached'

alias gdct='git describe --tags `git rev-list --tags --max-count=1`'

alias gdt='git diff-tree --no-commit-id --name-only -r'

alias gdw='git diff --word-diff'

alias gf='git fetch'

alias gfa='git fetch --all --prune'

alias gfo='git fetch origin'

alias gg='git gui citool'

alias gga='git gui citool --amend'

alias ggpull='git pull origin $(git_current_branch)'

alias ggpur=ggu

alias ggpush='git push origin $(git_current_branch)'

alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)'

alias ghh='git help'

alias gignore='git update-index --assume-unchanged'

alias gignored='git ls-files -v | grep "^[[:lower:]]"'

alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'

alias gk='\gitk --all --branches'

alias gke='\gitk --all $(git log -g --pretty=%h)'

alias gl='git pull'

alias glg='git log --stat'

alias glgg='git log --graph'

alias glgga='git log --graph --decorate --all'

alias glgm='git log --graph --max-count=10'

alias glgp='git log --stat -p'

alias glo='git log --oneline --decorate'

alias globurl='noglob urlglobber '

alias glog='git log --oneline --decorate --graph'

alias gloga='git log --oneline --decorate --graph --all'

alias glol='git log --graph --pretty='\''%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'\'' --abbrev-commit'

alias glola='git log --graph --pretty='\''%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'\'' --abbrev-commit --all'

alias glp=_git_log_prettily

alias glum='git pull upstream master'

alias gm='git merge'

alias gmom='git merge origin/master'

alias gmt='git mergetool --no-prompt'

alias gmtvim='git mergetool --no-prompt --tool=vimdiff'

alias gmum='git merge upstream/master'

alias gp='git push'

alias gpd='git push --dry-run'

alias gpoat='git push origin --all && git push origin --tags'

alias gpristine='git reset --hard && git clean -dfx'

alias gpsup='git push --set-upstream origin $(git_current_branch)'

alias gpu='git push upstream'

alias gpv='git push -v'

alias gr='git remote'

alias gra='git remote add'

alias grb='git rebase'

alias grba='git rebase --abort'

alias grbc='git rebase --continue'

alias grbi='git rebase -i'

alias grbm='git rebase master'

alias grbs='git rebase --skip'

alias grep='grep  --color=auto --exclude-dir={.bzr,CVS,.git,.hg,.svn}'

alias grh='git reset HEAD'

alias grhh='git reset HEAD --hard'

alias grmv='git remote rename'

alias grrm='git remote remove'

alias grset='git remote set-url'

alias grt='cd $(git rev-parse --show-toplevel || echo ".")'

alias gru='git reset --'

alias grup='git remote update'

alias grv='git remote -v'

alias gsb='git status -sb'

alias gsd='git svn dcommit'

alias gsi='git submodule init'

alias gsps='git show --pretty=short --show-signature'

alias gsr='git svn rebase'

alias gss='git status -s'

alias gst='git status'

alias gsta='git stash save'

alias gstaa='git stash apply'

alias gstc='git stash clear'

alias gstd='git stash drop'

alias gstl='git stash list'

alias gstp='git stash pop'

alias gsts='git stash show --text'

alias gsu='git submodule update'

alias gts='git tag -s'

alias gtv='git tag | sort -V'

alias gunignore='git update-index --no-assume-unchanged'

alias gunwip='git log -n 1 | grep -q -c "\-\-wip\-\-" && git reset HEAD~1'

alias gup='git pull --rebase'

alias gupv='git pull --rebase -v'

alias gwch='git whatchanged -p --abbrev-commit --pretty=medium'

alias gwip='git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify -m "--wip-- [skip ci]"'

alias history='fc -l 1'

alias l='ls -lah'

alias la='ls -lAh'

alias ll='ls -lh'

alias ls='ls --color=tty'

alias lsa='ls -lah'

alias md='mkdir -p'

alias please=sudo

alias po=popd

alias pu=pushd

alias rd=rmdir

alias which-command=whence

这套别名还是很方便的。当然其中可能个别不习惯,可以自行修改。改成自己习惯喜欢的就好。

 类似资料: