![](/img/trans.png)
[英]How do I invoke a text editor from a command line program like git does?
[英]How do I properly configure Sublime Text 3 as the default text editor for git commit messages?
我正在学习如何在Windows上使用Ubuntu CLI来执行git命令之类的事情,到目前为止,一切工作都很顺利。 但是,我唯一的困扰是,每当打开ST3实例以提交提交消息时,就会打开第二个选项卡,这在某种程度上破坏了事情的流程。
最初,我为将ST3设置为文本编辑器所做的就是将以下行添加到.gitconfig文件中:
[core]
editor = /mnt/c/Program\\ Files/Sublime\\ Text\\ 3/subl.exe `wslpath.sh -w $PWD/.git/COMMIT_EDITMSG` -nw
注意:对于熟悉Cygwin函数的人来说,“ wslpath.sh -w ”的作用类似于cygpath,因为它将Unix格式的目录转换为可与Windows一起使用。
我想防止每次提交更改时都打开此附加选项卡 ,而只显示用于编辑消息的窗口 :
您不应该将文件的路径添加到命令中。 Git会将其单独作为命令的参数。
因此, `wslpath.sh -w $PWD/.git/COMMIT_EDITMSG`
不应成为设置为core.editor
的命令的一部分。
您的命令依赖于打开文件COMMIT_EDITMSG
,当git尝试打开文件以编辑合并提交消息,交互式rebase待办事项文件或编辑带注释的标记消息等时,该命令将无法正常工作。提交消息不是唯一的通过文件进行编辑的地方。
然后,附加选项卡(如屏幕截图中所示)似乎来自以下事实:该文件实际上已在结果命令中列出两次:一次来自core.editor
配置变量,第二次来自git commit
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.