当前位置: 首页 > 知识库问答 >
问题:

VSCode:使用WSL Git而不是Windows的Git

任飞鸣
2023-03-14

我想将 WSL(在 Windows 上的 Bash)Git 与 VSCode 一起使用,而不是用于 Windows 的 Git,以避免多次安装 Git。

我创建了一个简单的bat脚本,通过在WSL中重定向git命令来模拟< code>git.exe行为。它在CMD中工作得很好,但在VSCode中就不行了。另外,WSL是我在VSCode中的默认终端。

VSCode settings.json:

{
    "git.path": "D:\\tools\\git.bat",
    "terminal.integrated.shell.windows": "C:\\Windows\\Sysnative\\bash.exe"
}

和 git.bat:

@echo off
bash -c 'git %*'

有没有办法让VSCode和WSL Git一起工作?

共有3个答案

柴俊捷
2023-03-14

提供 bash 执行的完整路径:

吉特。蝙蝠:

@echo off
c:\windows\sysnative\bash.exe -c "git %*"
松高歌
2023-03-14

我为自己创建了一个小工具来解决这个问题,并将其托管在GitHub上。

基本的git功能似乎可以工作,比如查看更改和提交。

可以从发布页面下载现成的二进制文件。

其中一个问题是,输入路径需要从Windows表示(C:\Foo\Bar)转换为WSL中的Linux路径(/mnt/C/Foo/Bar),然后再转换为git输出中的路径。

例如,VSCode中的Git插件使用命令

git rev-parse --show-toplevel

要查找git存储库的根目录,但使用WSL git,这当然会返回一个Linux路径,需要在Windows上为VSCode翻译。

汤昊
2023-03-14

自VS Code 1.34(2019年4月)以来,一个远程扩展被引入WSL:

基本上,VS代码的一个服务器实例被启动到WSL中,允许您从Windows上的客户端实例使用所有的WSL工具(例如git)。

感谢您指出@Noornashriq Masnon!

 类似资料:
  • 我想用Visual Studio代码编辑一个Python程序。为了保持可移植性,我希望Python程序包含在Python虚拟环境中。为了保持venv小,我想只安装Python程序需要的东西(特别是不安装VSCode需要的东西)。 我通过在设置中设置“python.pythonPath”变量来告诉VSCode要使用哪个venv。json文件(即我的工作区设置,而不是我的用户设置)。这在我可以运行程序

  • 问题内容: Javascript 1.9.3 / ECMAScript5引入了DouglasCrockford等人提倡很长时间的技术。如何在下面的代码中替换为? (假设存在)。 我能想到的最好的是: 似乎没有任何优势,所以我想我没有。我可能太新古典了。我应该如何使用来创建用户“ bob”? 问题答案: 仅具有一个继承级别,您的示例可能无法让您看到的真正好处。 通过此方法,您可以轻松实现 差异继承

  • 问题内容: 每当我读到关于使用Scala的作者通常提的是演员,而应使用(此举例)。虽然我大致了解了Actor的工作原理,但我真的很想看到一个Actor的示例,该示例被用来在一段代码中替换Java的方法修饰符(这意味着它的Scala等效项- 块)。例如,修改数据结构的内部将很高兴。 这是对Actor的很好利用,还是我被误导了? 问题答案: Actor保证一次只处理一条消息,这样就不会有两个线程访问任

  • 我是说替换 只要 在班上名列前茅。对我有用。 请给出你的建议。 使用SpringJunit4ClassRunner.class而不是MockitoJunitRunner.class

  • 问题内容: 到目前为止,我一直在使用: 谢谢 编辑:我为可能遇到此页面的任何人提供了一种解决方案,以演示如何使用POST而不是GET。如果您不熟悉AJAX,建议您首先使用GET方法向本教程http://www.w3schools.com/PHP/php_ajax_php.asp推荐。 解- javascript: 的PHP: 由于有关使用POST和GET的原因-请参见注释。 问题答案: 您显示的查

  • 问题内容: 我有看起来像这样的XML: 我想使用JAXB进行阅读。 我知道我能做 如果XML看起来像 ,但是我对上面的XML布局怎么办? 问题答案: 注意: 我是EclipseLink JAXB(MOXy)的负责人,并且是JAXB 2.X(JSR-222)专家组的成员。 您可以在此用例中使用MOXy的扩展名: