git-bash的alias別名設置

常需要設置別名時,直接使用

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

這套別名還是很方便的。當然其中可能個別不習慣,可以自行修改。改成自己習慣喜歡的就好。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章