章節 ▾ 第二版

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