如何从 git bash 运行 devenv.exe 命令行开关(适用于 Visual Studio 2019)

mar*_*o87 6 cmd git-bash visual-studio-2019

我的主要用例是我想使用 devenv.exe /edit 命令使用 git bash 在已运行的 Visual Studio 2019 实例中打开文件。

我遇到的问题是我似乎无法巧妙地 git bash 以实际有效的方式运行命令。

具体来说,这就是我所看到的:

从 Windows cmd:

  • 命令:devenv /编辑 foobar.c
  • 结果:成功!;在 Visual Studio 2019 的现有实例中打开 foobar.c

来自 git bash:

  • 命令:devenv /编辑 foobar.c
  • 结果:失败!;打开 2019 的新实例,并弹出错误消息:在命令行上指定了以下文件:“C:/Program Files/Git/edit” 找不到这些文件,也不会加载。打开文件

来自 git bash,将命令塞到 .bat 文件下

  • mybat.bat 内容:devenv /edit foobar.c
  • 命令:cmd //c mybat.bat
  • 结果:失败!;打开 2019 年的新实例,没有错误弹出窗口,打开文件。

从 git bash,使用 exe 和文件的完整路径

  • 命令:“/c/Program Files (x86)/Microsoft Visual Studio/2019/Professional/Common7/IDE/devenv.exe”/edit /c/Users/MYNAME/foobar.c
  • 结果:失败!;打开 2019 的新实例,并弹出错误消息:在命令行上指定了以下文件:“C:/Program Files/Git/edit” 找不到这些文件,也不会加载。打开文件

从 git bash,转义编辑命令并使用完整路径:

  • 命令:“/c/Program Files (x86)/Microsoft Visual Studio/2019/Professional/Common7/IDE/devenv.exe”/edit /c/Users/MYNAME/foobar.c
  • 结果:失败!;打开 2019 年的新实例,没有错误弹出窗口,打开文件。

从 git bash,通过 git bash 打开 sln 后:

  • 命令1:devenv.exe my_solution.sln &
  • 结果:打开我的解决方案
  • 命令2:devenv.exe //编辑foobar.c &
  • 结果:成功!;在 Visual Studio 2019 的现有实例中打开 foobar.c
  • 命令 3(来自不同的 git bash):devenv //edit foobar.c &
  • 结果:失败!;打开 2019 年的新实例,没有错误弹出窗口,打开文件。

谁能想到一种从 git bash 调用命令的方法,就像 Windows 命令提示符 (cmd.exe) 调用命令一样?

tsc*_*ann 0

我能找到的唯一解决方案是放入"& "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe" "solution.sln" /Build Release.ps1 文件并powershell build.ps1从我的.sh文件中调用。