首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用Visual Studio代码作为git的默认编辑器?

如何使用Visual Studio代码作为git的默认编辑器?
EN

Stack Overflow用户
提问于 2015-05-04 15:03:43
回答 15查看 252.3K关注 0票数 510

我知道它不可能用来进行合并(至少现在是这样),但是有没有人知道是否可以用它来查看比较,如果可以,在.gitconfig文件中需要哪些命令行选项才能实现这一点?

更新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]>

代码可以正确打开,并显示预期的内容,但不会等待响应,即单击保存并关闭窗口以返回提示。

更新2:

我刚刚收到一位开发VSCode的开发人员的回复。看起来当前不支持此功能:-(

https://twitter.com/IsidorN/status/595501573880553472

如果你有兴趣看到这个功能的添加,你可能会考虑在这里添加你的投票:

http://visualstudio.uservoice.com/forums/293070-visual-studio-code/suggestions/7756482-support-git-configure-diff-and-merge-tools

更新3:

我一直在reliably informed,这个功能已经被VSCode团队采用,所以我期待着未来的版本将包括它。

更新4:

感谢下面的@f-boucheros注释,我已经能够让VS Code作为提交注释、rebase等的默认编辑器工作。我仍然想看看是否有可能将它用作diff工具。

更新5:

根据这个问题的公认答案,现在可以使用V1.0版本的代码实现这一点。

EN

回答 15

Stack Overflow用户

发布于 2015-10-27 22:55:14

据我所知,VSCode已经不在AppData中了。

因此,通过在命令提示符窗口中执行该命令来设置默认git编辑器:

git config --global core.editor "'C:\Program Files (x86)\Microsoft VS Code\code.exe' -w"

参数-w--wait是等待窗口关闭后再返回。Visual Studio代码是基于Atom编辑器的。如果您还安装了atom,请执行命令atom --help。您将在帮助中看到最后一个参数是wait。

下次你做git rebase -i HEAD~3时,它将弹出Visual Studio Code。一旦VSCode接近,Git就会夺回领先地位。

注意:我当前的VSCode版本是0.9.2

我希望这能有所帮助。

票数 50
EN

Stack Overflow用户

发布于 2019-07-22 19:03:31

另一个有用的选项是设置EDITORVISUAL环境变量。许多应用程序和实用程序都使用这些环境变量来了解要使用的编辑器。如果没有设置core.editor,Git也会使用其中之一(取决于Git版本)。

您可以使用以下命令为当前会话设置它:

export EDITOR="code --wait"
export VISUAL="$EDITOR"

这样,不仅git,而且许多其他应用程序都将使用VS代码作为编辑器。

例如,要使此更改永久生效,请将其添加到您的~/.profile中。有关更多选项,请参阅this question

此方法的另一个优点是,您可以为不同的情况设置不同的编辑器:

从本地terminal.

  • When工作时,将通过会话进行连接。

这对VS Code (或任何其他GUI编辑器)特别有用,因为没有GUI它就不能工作。

在Linux操作系统上,将以下代码放入您的~/.profile

# Preferred editor for local and remote sessions
if [[ -n $SSH_CONNECTION ]]; then # SSH mode
  export EDITOR='vim'
else # Local terminal mode
  export EDITOR='code -w'
fi
export VISUAL="$EDITOR"

这样,当您使用本地终端时,$SSH_CONNECTION环境变量将为空,因此将使用code -w编辑器,但是当您通过SSH连接时,则$SSH_CONNECTION环境变量将是非空字符串,因此将使用vim编辑器。它是控制台编辑器,因此即使您通过SSH连接,它也可以工作。

有关EDITORVISUAL环境变量的区别,请参阅this question

票数 26
EN

Stack Overflow用户

发布于 2018-06-11 23:08:20

您需要使用命令:

git config --global core.editor "'C:\Program Files\Microsoft VS Code\code.exe' -n -w"

确保您可以从Git Bash启动编辑器

如果您想使用具有短路径的Code.exe,可以通过在.bash_profile中添加以下行来实现:

alias vscode="C:/Program\ Files/Microsoft\ VS\ Code/Code.exe"

现在,您可以只使用vscode命令(或您为其命名的任何名称)来调用它。

一些附加信息:

安装程序会将Visual Studio代码添加到您的%PATH%中,因此您可以在控制台中键入“代码”以打开该文件夹中的VS代码。您需要在安装后重新启动控制台,以使对%PATH%环境变量的更改生效。

票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30024353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档