在命令行使用git时,我想知道是否可以使用Visual Studio Code作为默认编辑器,即在创建提交注释时,以及从命令行查看文件的diff .
我明白用它做合并是不可能的(至少在一分钟之内)但是有没有人知道是否有可能用它来查看diff,如果是的话,需要什么命令行选项.gitconfig文件来实现这一目标?
UPDATE 1:
我尝试过类似于我为Notepad++ in the past做的方法,即
#!/bin/sh
"c:/Program Files (x86)/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin "$*"
并使用:
#!/bin/sh
"C:\Users\gep13\AppData\Local\Code\app-0.1.0\Code.exe" "$*"
但这会导致错误消息:
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]>
代码打开正确,具有预期的内容,但它没有等待响应,即单击保存并关闭窗口以返回提示 .
UPDATE 2:
我刚刚从一位致力于VSCode的开发人员那里听到了回复 . 看起来目前不支持此功能:-(
https://twitter.com/IsidorN/status/595501573880553472
如果您有兴趣看到此功能被添加,您可能需要考虑在此处添加您的投票:
UPDATE 3:
我已经reliably informed这个功能已经被VSCode团队选中了,所以我期待将来的版本包含它 .
UPDATE 4:
感谢下面的@ f-boucheros评论,我已经能够将VS Code作为提交注释,rebase等的默认编辑器 . 我仍然希望看到是否可以将它用作diff工具 .
UPDATE 5:
根据问题的接受答案,现在可以使用V1.0版本的代码 .
10 回答
在Mac终端应用程序中运行此命令
您需要使用命令:
Make sure you can start your editor from Git Bash
如果要使用具有短路径的Code.exe,可以通过将以下行添加到.bash_profile来执行此操作:
现在,您可以仅使用
vscode
命令(或任何您命名的命令)来调用它一些额外的信息:
好消息!在撰写本文时,此功能已在 0.10.12-insiders 版本中实施,并通过 0.10.14-insiders 执行 . 因此,我们将在即将发布的版本1.0 Release of VS Code中拥有它 .
实施参考:Implement -w/--wait command line arg
我将Visual Studio代码设置为默认打开.txt文件 . 接下来我确实使用了简单的命令:
git config --global core.editor "'C:\Users\UserName\AppData\Local\Code\app-0.7.10\Code.exe\'"
. 一切都运作良好 .在Windows 10上使用64位内部人员版本命令应该是:
你也可以在'Program Files'目录中将'code-insiders.cmd'重命名为'code.cmd',这样你就可以使用命令'code'了 . 开始编辑文件 . 目录
我打开了
.gitconfig
并修改了它:这样做对我来说(我在Windows 8上) .
但是,我注意到在我尝试了一个任意
git commit
后,在我的 Git Bash 控制台中,我看到以下消息:不确定这可能是什么后果 .
据我所知,VSCode不再在AppData中了 .
因此,通过在命令提示符窗口中执行该命令来设置默认的git编辑器:
参数
-w
,--wait
是在返回之前等待窗口关闭 . Visual Studio代码基于Atom编辑器 . 如果你还安装了原子,则执行命令atom --help
. 您将看到帮助中的最后一个参数是等待 .下次执行
git rebase -i HEAD~3
时,它将弹出Visual Studio代码 . 一旦VSCode关闭,Git将收回领先优势 .注意:我当前的VSCode版本是0.9.2
我希望有所帮助 .
GitPad将当前文本编辑器设置为Git的默认编辑器 .
我在Windows 10中的
.txt
文件的默认编辑器是Visual Studio Code,并且运行GitPad曾使它成为Git的默认编辑器 . 我没有遇到问题中提到的问题(在我的情况下,Git会等到VS Code窗口关闭) .(
.exe
文件的链接对我不起作用,您可能需要自己编译源代码 . )我不确定你能做到这一点,但你可以在你的gitconfig文件中尝试这些添加 .
尝试从这些值替换kdiff3以指向visual studio代码可执行文件 .
[merge] tool = kdiff3 [mergetool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe keepBackup = false trustExitCode = false
在最新版本(v1.0,在 March 2016 中发布)中,您现在可以use VS Code as the default git commit/diff tool . 引文来自文件: