Git
章節 ▾ 第二版

A1.6 附錄 A:其他環境中的 Git - Bash 中的 Git

Bash 中的 Git

如果您是 Bash 使用者,您可以利用 Shell 的某些功能,讓您使用 Git 的體驗更加友善。實際上,Git 隨附了數種 Shell 的外掛程式,但預設情況下並未啟用。

首先,您需要從您正在使用的 Git 版本原始碼中取得完成檔案的副本。透過輸入 git version 來檢查您的版本,然後使用 git checkout tags/vX.Y.Z,其中 vX.Y.Z 對應於您正在使用的 Git 版本。將 contrib/completion/git-completion.bash 檔案複製到方便的位置,例如您的家目錄,然後將此程式碼新增到您的 .bashrc

. ~/git-completion.bash

完成後,將您的目錄變更為 Git 儲存庫,然後輸入

$ git chec<tab>

…而 Bash 會自動完成為 git checkout。這適用於所有 Git 的子命令、命令列參數,以及適當的遠端和參考名稱。

自訂提示以顯示有關目前目錄 Git 儲存庫的資訊也很有用。這可以根據您的需要設定得簡單或複雜,但大多數人通常需要一些關鍵資訊,例如目前的分支,以及工作目錄的狀態。若要將這些新增到您的提示中,只需將 Git 原始儲存庫中的 contrib/completion/git-prompt.sh 檔案複製到您的家目錄,然後將類似以下內容新增到您的 .bashrc

. ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1='\w$(__git_ps1 " (%s)")\$ '

\w 表示列印目前的工作目錄,\$ 列印提示的 $ 部分,而 __git_ps1 " (%s)" 會使用格式化引數呼叫 git-prompt.sh 提供的函式。現在,當您位於任何 Git 控制的專案內時,您的 bash 提示將如下所示

Customized `bash` prompt
圖 184. 自訂的 bash 提示

這兩個腳本都附有實用的文件;請查看 git-completion.bashgit-prompt.sh 的內容以取得更多資訊。

scroll-to-top