Git
章節 ▾ 第二版

2.7 Git 基礎 - Git 別名

Git 別名

在我們進入下一章之前,我們想介紹一個可以讓您的 Git 體驗更簡單、更容易且更熟悉的功能:別名。為了清楚起見,我們不會在本書的其他地方使用它們,但如果您經常使用 Git,則應該了解別名。

如果您輸入部分命令,Git 不會自動推斷您的命令。如果您不想輸入每個 Git 命令的完整文字,可以使用 git config 輕鬆地為每個命令設定別名。以下是一些您可能想要設定的範例:

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

這表示,例如,您只需要輸入 git ci,而不是輸入 git commit。當您繼續使用 Git 時,您可能也會經常使用其他命令;請隨時建立新的別名。

這項技術在建立您認為應該存在的命令時也非常有用。例如,為了修正您在取消暫存檔案時遇到的可用性問題,您可以將自己的 unstage 別名新增至 Git:

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

這使得以下兩個命令等效:

$ git unstage fileA
$ git reset HEAD -- fileA

這似乎更清楚一點。新增 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 只是將新命令替換為您為其設定別名的任何內容。但是,您可能想要執行外部命令,而不是 Git 子命令。在這種情況下,請以 ! 字元開始命令。如果您編寫自己的工具來處理 Git 儲存庫,這會很有用。我們可以透過將 git visual 設定別名為執行 gitk 來示範:

$ git config --global alias.visual '!gitk'
scroll-to-top