问题描述
我在Windows机器上安装了Hudson Slave,需要在其上执行一些shell命令。我已将所有命令放入项目的执行外壳部分,第一行内容如下:
#!C:\\msysgit\\msysgit\\bin\\sh.exe
但是,在运行项目时,出现错误,提示找不到命令。特别是对于git,cd,make,rm,我会假设更多。我觉得这很容易解决,但无法解决。在计算机上使用msysgit时,脚本可以正常工作,但是我无法通过Hudson进行操作。任何帮助,将不胜感激。我需要使用msysgit而不是Cygwin。
解决方法
您可以首先显示该脚本:
用户名
路径
ѭ1(对于ssh操作很重要,在Windows上并非总是正确设置)
并查看在Hudson工作中这些变量引用了什么。
它们可能不会反映/继承您当前会话的值。
它取决于您如何安装msysgit。
OP Zack Lalanne在评论中提到他只需要拥有:
#!C:\\msysgit\\bin\\sh.exe --login -i
这意味着bash会话将继承他的环境变量,从而使作业比没有用户环境的情况更有可能运行。