8 3配置別名

2021-08-11 18:20:57 字數 2500 閱讀 9036

有沒有經常敲錯命令?比如git status?status這個單詞真心不好記。

如果敲git st就表示git status那就簡單多了,當然這種偷懶的辦法我們是極力贊成的。

我們只需要敲一行命令,告訴git,以後st就表示status:

$ git config --global alias.st status
好了,現在敲git st看看效果。

當然還有別的命令可以簡寫,很多人都用co表示checkout,ci表示commit,br表示branch:

$ git config --global alias.co checkout

$ git config --global alias.ci commit

$ git config --global alias.br branch

以後提交就可以簡寫成:

$ git ci -m "bala bala bala..."
–global引數是全域性引數,也就是這些命令在這台電腦的所有git倉庫下都有用。

在撤銷修改一節中,我們知道,命令git reset head file可以把暫存區的修改撤銷掉(unstage),重新放回工作區。既然是乙個unstage操作,就可以配置乙個unstage別名:

$ git config --global alias.unstage 'reset head'
當你敲入命令:

$ git unstage test.py
實際上git執行的是:

$ git reset head test.py
配置乙個git last,讓其顯示最後一次提交資訊:

$ git config --global alias.last 'log -1'
這樣,用git last就能顯示最近一次的提交:

$ git last

commit adca45d317e6d8a4b23f9811c3d7b7f0f180bfe2

merge: bd6ae48 291bea8

author: michael liao .com>

date: thu aug 22

22:49:22

2013 +0800

merge & fix hello.py

甚至還有人喪心病狂地把lg配置成了:

git config --global alias.lg "log --color --graph --pretty=format:'%cred

%h%creset -%c(yellow)%d

%creset

%s%cgreen(%cr) %c(bold blue)<%an>%creset' --abbrev-commit"

來看看git lg的效果:

git-lg
為什麼不早點告訴我?別激動,咱不是為了多記幾個英文單詞嘛!

配置檔案

配置git的時候,加上–global是針對當前使用者起作用的,如果不加,那只針對當前的倉庫起作用。

配置檔案放哪了?每個倉庫的git配置檔案都放在.git/config檔案中:

$ cat .git/config 

[core]

repositoryformatversion = 0

filemode = true

bare = false

logallrefupdates = true

ignorecase = true

precomposeunicode = true

[remote "origin"]

url = [email protected]:michaelliao/learngit.git

fetch = +refs/heads/*:refs/remotes/origin/*

[branch "master"]

remote = origin

merge = refs/heads/master

[alias]

last = log -1

別名就在[alias]後面,要刪除別名,直接把對應的行刪掉即可。

而當前使用者的git配置檔案放在使用者主目錄下的乙個隱藏檔案.gitconfig中:

$ cat .gitconfig

[alias]

co = checkout

ci = commit

br = branch

st = status

[user]

name = your

name

email = [email protected]

配置別名也可以直接修改這個檔案,如果改錯了,可以刪掉檔案重新通過命令配置。

8 3 命令補全和alias別名

按 tab 鍵可以幫我們補全乙個命令 乙個路徑或者乙個檔名。連續按兩次 tab 鍵,系統則會把所有的命令或者檔名都列出來 命令補全 輸入ls後按兩下 tab,會把 ls 開頭的都列出來 root evan 01 ls ls lsattr lsblk lscpu lsinitrd lsipc lslo...

ssh配置別名

在mac os的終端 terminal 中,可以使用命令ssh user host的命令來遠端連線一台伺服器,但是,如果要管理的伺服器太多,ip位址不能全部記住的時候怎麼辦?這時候我們可以為每一台伺服器設定乙個別名 alias 使用vi命令編輯一下 ssh config這個檔案 如果目錄下沒有這個檔...

Git 配置別名

當前倉庫配置檔案 git config 全域性使用者配置檔案 gitconfig 手動修改配置檔案 alias st status cm commit co checkout br branch ad add ac git add git commit m 哈哈 git push 命令列配置命令gi...