章節 ▾
第二版
-
A1. 附錄 A: Git 在其他環境
- A1.1 圖形介面
- A1.2 Visual Studio 中的 Git
- A1.3 Visual Studio Code 中的 Git
- A1.4 IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine 中的 Git
- A1.5 Sublime Text 中的 Git
- A1.6 Bash 中的 Git
- A1.7 Zsh 中的 Git
- A1.8 PowerShell 中的 Git
- A1.9 小結
-
A2. 附錄 B: 在應用程式中嵌入 Git
-
A3. 附錄 C: 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'