tig — 让 git 命令行可视化

tig 是一款优化 git 命令行的工具,使 git 命令行更加的便捷人性化 。如果用习惯了,会上瘾。

image

基础

安装

在 Mac 上最简单的方式是使用 Homebrew:

brew install tig

其他安装方式请参考这里

使用

以下内容建议阅读时在 repository 亲手操作

安装成功后,在 Repo 文件夹下,输入 【 tig 】+ 【 Enter 】即可进入 tig 模式。此时展现在面前的将会是本地所有的 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 可以认为是主页。

【 / 】输入关键字可进行搜索。

【 R 】刷新当前页面,可退出搜索的高亮状态。

【 Q 】退出 tig。

【 h 】查看快捷键帮助。

tig 可以设置作用域,如果只想关注某个文件夹的修改记录,可使用 【 tig 文件夹名】。

如果只想展示某一段时间的 commit 记录, tig --after=“2018-01-01 --before="2018-05-12”。如果希望不写引号,可以使用tig --after==May.10th

在分屏状态下,使用 Tab 切换左右屏幕,也可以在选中右侧屏幕时,按住 【 shift 】上下切换操作效果会在左侧屏幕生效。

从以上的介绍来看,tig 更偏向于查看(view)。

进阶篇

上文快捷键其实是默认的配置,所以我们可以自定义。自定义文件在~/.tigrc目录,如果安装完成后没有这个文件,需自行创建,并拷贝系统配置 后进行修改。

例如,不喜欢【 t 】显示的文件夹颜色,可以将 blue 改为 red。

color "tree "           blue    default

tig 支持 bind 的语法,来实现自定义快捷键,映射到具体的 git 命令。bind status 意思是在 statsu view 模式下(【 s 】键进入)才会生效,P 的功能为 git push。

bind status P !git push

! 代表立即执行。

.tigrc 文件中:

bind refs       C       ?git checkout %(branch)

代表 refs view 模式下,键入【 C 】checkout 分支,执行前会请求确认。

注意设置映射关系后需重启终端。更多功能请自行挖掘。:)

推荐

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

https://learngitbranching.js.org/

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

你可能感兴趣的:(tig — 让 git 命令行可视化)