我更愿意在Vim中编写提交消息,但它在Emacs中打开它们.
如何配置Git以始终使用Vim?请注意,我想在全球范围内执行此操作,而不仅仅是针对单个项目.
我在Windows上试用Git.我到了尝试"git commit"的地步,我收到了这个错误:
终端是愚蠢的,但没有定义VISUAL或EDITOR.请使用-m或-F选项提供消息.
所以我想出了我需要一个名为EDITOR的环境变量.没问题.我把它设置为指向记事本.这几乎奏效了.默认提交消息将在记事本中打开.但记事本不支持裸线馈送.我出去拿了Notepad ++,但是我无法弄清楚如何将Notepad ++设置为%EDITOR%以这样的方式使它与Git一起工作.
我没跟Notepad ++结婚.在这一点上,我不介意我使用什么编辑器.我只想在编辑器而不是命令行(with -m)中键入提交消息.
那些在Windows上使用Git的人:你用什么工具来编辑你的提交信息,你需要做些什么来使它工作?
在命令行中使用git时,我想知道是否可以使用Visual Studio Code作为默认编辑器,即在创建提交注释时,以及从命令行查看文件的差异.
我明白用它做合并是不可能的(至少在一分钟之内)但是有没有人知道是否有可能用它来查看差异,如果有的话,需要什么命令行选项.gitconfig文件来实现这一目标?
更新1:
我尝试过类似于我过去为Notepad ++所做的方法,即
#!/bin/sh
"c:/Program Files (x86)/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin "$*"
Run Code Online (Sandbox Code Playgroud)
用过:
#!/bin/sh
"C:\Users\gep13\AppData\Local\Code\app-0.1.0\Code.exe" "$*"
Run Code Online (Sandbox Code Playgroud)
但这会导致错误消息:
C:\temp\testrepo [master +1 ~0 -0]> git commit
[8660:0504/084217:ERROR:crash_reporter_win.cc(70)] Cannot initialize out-of-process crash handler
Aborting commit due to empty commit message.
C:\temp\testrepo [master +1 ~0 -0]>
Run Code Online (Sandbox Code Playgroud)
代码打开正确,具有预期的内容,但它没有等待响应,即单击保存并关闭窗口以返回提示.
更新2:
我刚从一位致力于VSCode的开发人员那里听到了回复.看起来目前不支持此功能:-(
https://twitter.com/IsidorN/status/595501573880553472
如果您有兴趣看到添加此功能,您可能需要考虑在此处添加您的投票:
更新3:
我已经可靠地获悉 VSCode团队已经接受了这个功能,所以我期待将来的版本包括它.
更新4:
感谢下面的@ f-boucheros评论,我已经能够让VS Code作为提交注释,rebase等的默认编辑器.我仍然希望看到是否可以将它用作diff工具.
更新5:
根据问题的接受答案,现在可以使用V1.0版本的代码.