创建一个 git 接收后触发器(应该适用于 Mac OS X 上的 Xamarin Studio)



我有一个 GIT 存储库所在的网络共享。在我的本地计算机上,我已经签出了 GIT 存储库,我正在使用集成的 GIT 客户端与 Xamarin Studio 一起工作。此外,我还安装了 Jenkins 以进行持续集成。到目前为止,这一切都在起作用。

现在我想在向这个仓库提交某些内容时通知 Jenkins。在 如何使 Jenkins CI 在推送到主控时带有 git 触发器?据说我应该在设置轮询 SCM 选项后创建一个 github 接收后触发器。

来自 Nav 的帖子说我只需要在 hooks 文件夹中创建一个post-commit内容类似于

#!/bin/sh
#
# A script which triggers the Jenkins build after a commit.
curl http://localhost:8080/jenkins/git/notifyCommit?url=http://localhost:8080/job/MyJobName/

但是如果我尝试在浏览器中打开 URL,我会得到

HTTP 错误 404

访问/jenkins/git/notifyCommit 时出现问题。原因:

Not Found

现在我交换了网址

http://yourserver/jenkins/git/notifyCommit?url=<URL of the Git repository>

直接在浏览器中调用此 URL 会导致构建。将其放入脚本中不会在提交后触发构建。我将钩子放入网络共享上的上述目录中。将脚本放在本地存储库上也不会触发构建。

那么,如何创建这样一个与 Xamarin Studio 协同工作的 git 接收后触发器呢?

编辑:

现在我将本地钩子的权限更改为 755,并真正删除了文件扩展名,但构建没有触发。

我不知道

你是否已经解决了这个问题 - 已经有一段时间了......

但我只是遇到了同样的问题,发现这是由于不正确的 URL:

请尝试改用curl http://localhost:8080/git/notifyCommit(不带jenkins/)。

最新更新