当我想使用特定私钥文件进行单个git操作时,显然我必须更改GIT_SSH环境变量。但是,我不能把它设置为
C:\Program Files\TortoiseGit\bin\TortoisePlink.exe -i D:\repo\key
。
manpage证实了这一点:
将选项传递给您要在GIT_SSH中列出的程序 然后需要将程序和选项包装到shell脚本中 设置GIT_SSH以引用shell脚本。
那么,我该怎么做?在这种情况下,什么是“shell脚本”?批处理文件?包含#!bash
的文件?两种方式都没有用,都给了我:
error: cannot spawn "D:\repo\test.bat": No such file or directory
fatal: unable to fork
使用.sh文件我得到了同样的错误,当然只是使用不同的文件名。在msysgit中有一个bash,它在我的PATH中,但是git似乎不理解shebang。我还尝试将路径转换为msys风格的路径(/d/repo/test.sh
),但git仍然说“没有这样的文件或目录”。当我运行bash
并粘贴完全相同的路径时,它将被执行。