2.7 Git 別名

2018-02-24 15:22 更新

Git 別名

在我們結(jié)束本章 Git 基礎(chǔ)之前,正好有一個(gè)小技巧可以使你的 Git 體驗(yàn)更簡(jiǎn)單、容易、熟悉:別名。我們不會(huì)在之后的章節(jié)中引用到或假定你使用過(guò)它們,但是你大概應(yīng)該知道如何使用它們。

Git 并不會(huì)在你輸入部分命令時(shí)自動(dòng)推斷出你想要的命令。如果不想每次都輸入完整的 Git 命令,可以通過(guò) git config 文件來(lái)輕松地為每一個(gè)命令設(shè)置一個(gè)別名。這里有一些例子你可以試試:

$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status

這意味著,當(dāng)要輸入 git commit時(shí),只需要輸入 git ci。隨著你繼續(xù)不斷地使用 Git,可能也會(huì)經(jīng)常使用其他命令,所以創(chuàng)建別名時(shí)不要猶豫。

在創(chuàng)建你認(rèn)為應(yīng)該存在的命令時(shí)這個(gè)技術(shù)會(huì)很有用。例如,為了解決取消暫存文件的易用性問(wèn)題,可以向 Git 中添加你自己的取消暫存別名:

$ git config --global alias.unstage 'reset HEAD --'

這會(huì)使下面的兩個(gè)命令等價(jià):

$ git unstage fileA
$ git reset HEAD -- fileA

這樣看起來(lái)更清楚一些。通常也會(huì)添加一個(gè) last 命令,像這樣:

$ git config --global alias.last 'log -1 HEAD'

這樣,可以輕松地看到最后一次提交:

$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <dreamer3@example.com>
Date:   Tue Aug 26 19:48:51 2008 +0800

    test for current head

    Signed-off-by: Scott Chacon <schacon@example.com>

可以看出,Git 只是簡(jiǎn)單地將別名替換為對(duì)應(yīng)的命令。然而,你可能想要執(zhí)行外部命令,而不是一個(gè) Git 子命令。如果是那樣的話,可以在命令前面加入 ! 符號(hào)。如果你自己要寫(xiě)一些與 Git 倉(cāng)庫(kù)協(xié)作的工具的話,那會(huì)很有用。我們現(xiàn)在演示將 git visual 定義為 gitk 的別名:

$ git config --global alias.visual '!gitk'
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)