基于 tig 的 git workflow
经常使用 git ,每一个操作都是类似下面这种全部都敲一遍,会很累,很容易出错,而且记不住这么长的命令。
git commit -m "your awesome commit message"
所以有各种 git 工具加快经常性事件,比如
- lazygit
- gitk
- sublime merge
- forgit
- gitui : 据说性能很好,但是没有尝试过
tig 相比这些而言而言,代码开源,功能强大,界面简洁,可以集成到 vim 中使用
我的配置基本官方给出来的配置: https://github.com/jonas/tig/blob/master/contrib/vim.tigrc
自定义命令
bind status D ?@rm %(file)
表示在 status view 中 D 可以删除一个文件.
?
: 表示执行命令前是否咨询一下@
: 表示在 background 中运行
常见的使用
- 在 diff view 中使用 e 可以让直接编辑对应的文件
- x 来 state 和 unstate 一个文件或者 hunk
- ur 来 discard 一个 hook
- ul 来 discard 一行修改
尝试下 gitui
- 无法像 tig 一样直接查看一个文件或者一个目录的历史
- copy 无法使用
- 不可以调整 layout ,而且左侧的框框太大了
好处:
- 性能
- stage 和 unstage 原生支持
- 搜索根据强大
本站所有文章转发 CSDN 将按侵权追究法律责任,其它情况随意。