1, 讓BASH 指令行顯示目前支線 以及 顯示送出狀态 并且使用不同顔色高亮區分
效果圖:

進入到git的工作目錄後,顯示目前所在支線名稱
如果有已跟蹤 未暫存的版本,那麼使用紅色* 提示
如果有已跟蹤 未送出的版本,那麼使用**** 提示
切換到其他支線後 提示符能列印目前支線名稱
切換到非Git工作目錄後,不影響其他操作。
定制原理:主要就是修改 PS1 變量(如果不知道PS1是什麼,那麼請先了解)。
修改bashrc 不管是全局的,還是目前使用者的
這樣就能顯示圖中的效果了,當然我這裡的PS1 有點複雜,如果你能看懂最後兩個變量引用,那麼自然就了解了。
2016.01.23更新,修複了在os x下運作不正常的問題。
2,讓Git的日常輸出更友好,以及自定義log格式
git預設的輸出是單一顔色的,不僅不夠美觀,也不容易閱讀。實際上,git本身就支援用多種顔色來顯示其輸出的資訊,隻需在指令行中運作以下指令來修改git的設定,即可開啟多顔色輸出:
執行以上指令後,git的status, diff和branch等諸指令的輸出就都是帶有顔色的了。見下圖示例。
完成上述步驟後,<code>git log</code> 指令的輸出雖然有了點顔色,但還是顯得枯燥(見下圖)。
不要緊,強大的git提供了自定義log格式的功能,嘗試輸入以下指令:
你将看到類似下圖的輸出:
怎麼樣,不賴吧?不過,每次檢視log都輸出這麼一長串的指令,實在是不太現實。咱們來通過git的指令别名來解決這個問題。輸入以下指令:
上述指令将建立一個指令别名 <code>lg</code>,每次你使用指令 <code>git lg</code> 就相當于輸入了剛才那一長串指令。現在,如果想看美觀的多顔色輸出,就使用 <code>git lg</code>,如果想看普通的log輸出,就使用 <code>git log</code>,二者互不幹擾。
如果你想讓log輸出某些特定的資訊,可以自己調整 <code>--pretty</code> 參數的值,例如下面的指令将隻顯示commit的hash,送出時間,送出者姓名:
format後面單引号中的内容替換為你想要的格式,即可實作自定義的log輸出格式。這裡的<code>%h</code>, <code>%ar</code>等是一些git預定義的占位符,完整清單如下:
Git 版本控制管理