我在Windows上有一个运行一些Windows版本的Jenkins master。
git客户端插件配置了一个固定的git路径为" C:\ Program Files(x86)\ git \ bin \ git.exe"
我现在已经创建了一个Linux奴隶,但当我在那里运行一个作业时,它正在尝试运行命令" C:\ Program Files(x86)\ git \ bin \ git.exe init",显然都失败了。
有一个简单的解决方案吗?我想我已经通过在Windows主机上修改PATH来解决它了,而现在git的固定路径只是" git"所以适用于两种操作系统。
"是否正确"为Jenkins解决这个问题的方法,还是有其他/更好的方法来做到这一点?
感谢。
答案 0 :(得分:5)
我的问题略有不同,但我的解决方案也适用于此问题。 Jenkins Poll SCM (Git) on Windows master / Build on Linux slave
使用" Git安装"选项,您将需要创建不同的作业,每个Git安装一个。在Windows或Linux上修改PATH,有时可能不是一个选项(在我的情况下,我只能访问Jenkins Web UI)。
相反,只需将Default Git安装指向Master git安装的任何内容(例如c:\apps\git\bin\git.exe
),然后配置自定义"工具位置"对于每个节点。这样,您可以在不同的主/从OS中运行相同的 jenkins作业。步骤进行:
/usr/local/bin/git
)
2.6保存linux上的节点配置应如下所示:
我相信额外的" git装置"正如@Jayan所提到的,当你需要有多个git安装或者你需要为某些Jenkins作业运行特定版本的git时更合适。
答案 1 :(得分:3)
确保所有奴隶和主人的道路上的“git”是一个好方法。
然而Jenkins可以安装多个git(对于其他工具,例如jdk,groovy,则为true)。
您可以从http://server-url/configure
进行配置点击“添加Git”并提供具有不同名称和路径的新git
然后,您可以在“作业”配置中“选择要使用的git”。
这种方法有积极的副作用。它允许您使用不同的git客户端版本(比如用于测试)
答案 2 :(得分:0)
git dir的相同环境变量就可以了。