tig — 讓 git 命令行可視化

tig 是一款優(yōu)化 git 命令行的工具,使 git 命令行更加的便捷人性化 。如果用習(xí)慣了,會上癮。

image

基礎(chǔ)

安裝

在 Mac 上最簡單的方式是使用 Homebrew

brew install tig

其他安裝方式請參考這里

使用

以下內(nèi)容建議閱讀時在 repository 親手操作

安裝成功后,在 Repo 文件夾下,輸入 【 tig 】+ 【 Enter 】即可進入 tig 模式。此時展現(xiàn)在面前的將會是本地所有的 commit 記錄以及分支的演化。

【 j 】【 k 】可上下切換選中的行,【 Enter 】可分屏查看當前 commit 記錄詳情,【 l 】小寫的 L,全屏查看 commit 記錄。

【 r 】進入 refs view 模式,查看所有分支,使用 【 j/k 】上下切換, 【 Enter 】查看分支演化。

【 s 】進入 status view,效果同 git status 命令,會展示所有 Untracked 和 UnStaged 文件。 選中 Unstaged 的文件鍵入【 u 】效果同 git add ,選中 staged 的文件鍵入 【 u 】效果同 git reset,即撤銷 add 操作。【 Enter 】查看分屏查看當前文件的修改記錄。

status view 模式下鍵入 【 C 】進入 vim 編輯器,【 i 】進入編輯模式,在第一行輸入 commit 信息,【 :x 】退出并保存。【 m 】查看 commit 記錄。

【 c 】進入 stash view 模式,全屏查看修改記錄,可配合 【 s 】 使用。

【 t 】進入 tree view 模式,git 目錄會以文件夾的形式展示。【 Enter】進入子目錄,【 , 】返回上一級目錄。

【 m 】進入 main view 查看當前分支的所有 commit 記錄,使用 【 j/k 】上下切換,【 回車 】可分屏查看 commit 詳情。同樣,【 j/k 】上下移動,【空格】翻頁。

main view 可以認為是主頁。

【 / 】輸入關(guān)鍵字可進行搜索。

【 R 】刷新當前頁面,可退出搜索的高亮狀態(tài)。

【 Q 】退出 tig。

【 h 】查看快捷鍵幫助。

tig 可以設(shè)置作用域,如果只想關(guān)注某個文件夾的修改記錄,可使用 【 tig 文件夾名】。

如果只想展示某一段時間的 commit 記錄, tig --after=“2018-01-01 --before="2018-05-12”。如果希望不寫引號,可以使用tig --after==May.10th

在分屏狀態(tài)下,使用 Tab 切換左右屏幕,也可以在選中右側(cè)屏幕時,按住 【 shift 】上下切換操作效果會在左側(cè)屏幕生效。

從以上的介紹來看,tig 更偏向于查看(view)。

進階篇

上文快捷鍵其實是默認的配置,所以我們可以自定義。自定義文件在~/.tigrc目錄,如果安裝完成后沒有這個文件,需自行創(chuàng)建,并拷貝系統(tǒng)配置 后進行修改。

例如,不喜歡【 t 】顯示的文件夾顏色,可以將 blue 改為 red。

color "tree "           blue    default

tig 支持 bind 的語法,來實現(xiàn)自定義快捷鍵,映射到具體的 git 命令。bind status 意思是在 statsu view 模式下(【 s 】鍵進入)才會生效,P 的功能為 git push。

bind status P !git push

! 代表立即執(zhí)行。

.tigrc 文件中:

bind refs       C       ?git checkout %(branch)

代表 refs view 模式下,鍵入【 C 】checkout 分支,執(zhí)行前會請求確認。

注意設(shè)置映射關(guān)系后需重啟終端。更多功能請自行挖掘。:)

推薦

如果對 git 的工作原理不是特別的熟悉,可以走一遍下面的教程,相信你會對 git 有更深刻的理解。

https://learngitbranching.js.org/

參考:
Manual · Tig - Text-mode interface for Git

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容