tig — 让 git 命令行可视化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tig — 让 git 命令行可视化相关的知识,希望对你有一定的参考价值。

参考技术A

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

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

其他安装方式请参考 这里

以下内容建议阅读时在 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 。

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

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

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

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

! 代表立即执行。

在 .tigrc 文件中:

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

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

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

https://learngitbranching.js.org/

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

tig简明教程

tig简介
tig是git的命令行可视化工具,可以方便地在命令行下完成git的各种操作
 
tig安装
Ubuntu: apt-get install tig
Mac: brew install tig
 
使用
命令行进入git项目代码目录,
tig  即可进入tig界面,默认为当前分支
tig branchname 可进入对应分支
常用快捷键:
h,帮助
分支视图:r
切换分支 - 在分支列表项上使用shift + c可切换到对应分支
 
状态视图:s
u 可文件加入或者剔除提交列表
! 可放弃文件修改
shift+c 可提交代码
 
cherry-pick:
checkout 目的分支,转到其他分支main视图,选择需要pick的commit,shift+c即可
 
 
 

以上是关于tig — 让 git 命令行可视化的主要内容,如果未能解决你的问题,请参考以下文章

git 命令行下浏览器tig使用记录

Git 命令使用体验的神器 -- tig

如何使用 Tig 浏览 Git 日志

Python 命令行之旅:使用 docopt 实现 git 命令

git命令行

Git婴幼儿使用手册十分钟让你帅气的使用命令行和团队工作