无法在tig中使用外部命令

时间:2016-06-30 07:20:53

标签: tig

我经常使用git和gitk。最近,我发现了一些关于tig的热情帖子,并决定尝试一下。 它看起来很适合查看存储库,但是如果不是不可行的话,用tig更改repo似乎很困难。

我面临的问题是tig无法启动外部命令的编辑器,因此无法继续执行操作。 例如,如果我选择提交并发出

!git commit --amend

我得到一个屏幕说

vim: Warning: Output is not to a terminal 

只有^ C让我出局,因此也停止了。

我可以做些什么来正确配置tig或git以使其正常工作?

提前谢谢, 路德

1 个答案:

答案 0 :(得分:1)

启动外部命令的主要方法是通过键绑定,Tig中的内容称为user-defined commands。例如,要修改上次提交,您可以将以下内容添加到~/.tigrc,之后按+会将您直接放入Vim:

bind generic + !git commit --amend

浏览状态有几个变量,可以传递给外部命令,例如%(commit)%(branch)以及%(prompt),用于请求输入,例如创建时分支。

作为参考,!<command>允许在寻呼机中打开输出,例如!git show 3e3abcd,因此更像是Vim&#39; :r!<command>