Gar*_*ark 312 git visual-studio-code
在命令行中使用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版本的代码.
rex*_*ghk 577
在最新版本(2016年3月发布的v1.0 )中,您现在可以使用VS Code作为默认的git commit/diff工具.引文来自文件:
- 确保您可以从命令行运行
code --help并获得帮助.
- 如果您没有看到帮助,请按以下步骤操作:
- Mac:选择Shell命令:在命令选项板的路径中安装"代码"命令.
- Windows:确保在安装期间选择了" 添加到PATH ".
- Linux:确保通过我们的新.deb或.rpm软件包安装了Code.
- 从命令行运行
git config --global core.editor "code --wait"现在您可以运行
git config --global -e并使用VS Code作为编辑器来配置Git.添加以下内容以支持将VS Code用作diff工具:
[diff]
tool = default-difftool
[difftool "default-difftool"]
cmd = code --wait --diff $LOCAL $REMOTE
Run Code Online (Sandbox Code Playgroud)
这利用了
--diff您可以传递给VS Code 的新选项,以并排比较两个文件.总结一下,这里有一些例子,你可以在哪里使用Git和VS代码:
git rebase HEAD~3 -i允许使用VS Code进行交互式rebasegit commit允许使用VS Code作为提交消息git add -p然后e进行交互式添加git difftool <commit>^ <commit>允许使用VS Code作为差异编辑器进行更改
Gau*_*nda 117
git config --global core.editor "code --wait"
Run Code Online (Sandbox Code Playgroud)
或者
git config --global core.editor "code -w"
Run Code Online (Sandbox Code Playgroud)
验证:
git config --global -e
Run Code Online (Sandbox Code Playgroud)
您的配置将在 Visual Studio Code 中打开。
Fra*_*her 29
据我所知,VSCode不再在AppData中了.
因此,通过在命令提示符窗口中执行该命令来设置默认的git编辑器:
git config --global core.editor "'C:\Program Files (x86)\Microsoft VS Code\code.exe' -w"
Run Code Online (Sandbox Code Playgroud)
参数-w,--wait是在返回之前等待窗口关闭.Visual Studio代码基于Atom编辑器.如果你还安装了原子,则执行命令atom --help.您将看到帮助中的最后一个参数是等待.
下次执行此操作时git rebase -i HEAD~3,将弹出Visual Studio Code.一旦VSCode关闭,Git将收回领先优势.
注意:我当前的VSCode版本是0.9.2
我希望有所帮助.
Rus*_*nko 23
另一个有用的选项是设置EDITOR环境变量。许多实用程序使用此环境变量来了解要使用的编辑器。如果没有core.editor设置,Git 也会使用它。
您可以使用以下方法为当前会话设置它:
export EDITOR="code --wait"
Run Code Online (Sandbox Code Playgroud)
不仅如此git,许多其他应用程序也会使用 VS Code 作为编辑器。
要使此更改永久化,请将其添加到您~/.profile的示例中。有关更多选项,请参阅此问题。
这种方法的另一个优点是您可以为不同的情况设置不同的编辑器:
这对于 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
Run Code Online (Sandbox Code Playgroud)
这样当您使用本地终端时,$SSH_CONNECTION环境变量将为空,因此code -w将使用编辑器,但是当您通过 SSH 连接时,则$SSH_CONNECTION环境变量将是一个非空字符串,因此vim将使用编辑器。它是控制台编辑器,因此即使您通过 SSH 连接它也能工作。
小智 16
我添加一个答案是因为所有其他答案都不够简洁,不符合我的喜好/不适合我的具体情况。我正在运行配备 M1 芯片的 MacBook Air 2021
\n要将 VS Code 设为 VS Code 中的默认 git 编辑器:
\n步骤1
\ngit config --global core.editor "code --wait"在命令行中运行该命令。
第2步
\n如果您尝试在此阶段进行提交,您可能会收到如下错误:
\n“提示:正在等待编辑器关闭文件...代码-w:代码:找不到命令\n错误:编辑器\'代码-w\'出现问题”。
\n这意味着您没有在 VS Code 中安装 shell 命令“code”。使用 (command + shift + p) 在 VS Code 中打开命令中心。搜索“code”并选择“Shell 命令:在 PATH 中安装 \xe2\x80\x98code\xe2\x80\x99 命令”。这会将“代码”添加到您的路径中。
\n步骤3
\n在尝试安装“代码”时,您可能会收到如下错误:
\n“EACCES:权限被拒绝,取消链接\'/usr/local/bin/code\'”。
\n我不知道是什么原因导致此问题,但简单的卸载并重新安装即可解决该问题。要卸载,请在 VS Code 命令中心搜索“卸载”,然后选择“Shell 命令:卸载 PATH 中的 \xe2\x80\x98code\xe2\x80\x99 命令”
\n步骤4
\n运行命令git config --global -e来测试新的默认编辑器是什么。您的配置文件应在 VS Code 文本编辑器中打开
资料来源:
\n\nVS Code 拒绝权限取消链接“usr/local/bin/code”
\nIlu*_*Kuk 11
您需要使用命令:
git config --global core.editor "'C:\Program Files\Microsoft VS Code\code.exe' -n -w"
Run Code Online (Sandbox Code Playgroud)
确保你可以从Git Bash开始编辑
如果要使用具有短路径的Code.exe,可以通过将以下行添加到.bash_profile来执行此操作:
alias vscode="C:/Program\ Files/Microsoft\ VS\ Code/Code.exe"
Run Code Online (Sandbox Code Playgroud)
现在,您可以仅使用vscode命令(或任何您命名的命令)来调用它
一些额外的信息:
安装程序会将Visual Studio代码添加到%PATH%,因此您可以在控制台中键入"code"以在该文件夹上打开VS Code.安装后需要重新启动控制台才能使更改为%PATH%环境变量生效.
| 归档时间: |
|
| 查看次数: |
120668 次 |
| 最近记录: |