Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当git push被触发时,我如何让Jenkins CI进行构建?_Git_Jenkins - Fatal编程技术网

当git push被触发时,我如何让Jenkins CI进行构建?

当git push被触发时,我如何让Jenkins CI进行构建?,git,jenkins,Git,Jenkins,伙计们!! 我正在尝试为一个项目设置Jenkins ci,该项目使用GIT作为存储库的本地版本控制。我已经为jenkins安装了合适的插件。我希望jenkins只在项目中有人试图掌握的时候才运行构建脚本,只需要向GitHub、GitLab等获取信息,但这是无用的。到目前为止,我已经能够设置它,以便任何人推到任何地方都可以触发构建 我想知道如何设置Jenkins的任务,以便在将git推送到我的存储库时自动生成项目根据,您需要为git设置一个接收后挂钩,以便在将回购推送到时通知Jenkins cur

伙计们!! 我正在尝试为一个项目设置Jenkins ci,该项目使用GIT作为存储库的本地版本控制。我已经为jenkins安装了合适的插件。我希望jenkins只在项目中有人试图掌握的时候才运行构建脚本,只需要向GitHub、GitLab等获取信息,但这是无用的。到目前为止,我已经能够设置它,以便任何人推到任何地方都可以触发构建

我想知道如何设置Jenkins的任务,以便在将git推送到我的存储库时自动生成项目

根据,您需要为git设置一个接收后挂钩,以便在将回购推送到时通知Jenkins

curl http://yourserver/git/notifyCommit?url=<URL of the Git repository>[&branches=branch1[,branch2]*][&sha1=<commit ID>]
curlhttp://yourserver/git/notifyCommit?url=[&branchs=branch1[,branch2]*][&sha1=]

在jenkins端,将作业设置为指向要构建的回购和分支,然后启用“构建触发器”>“轮询SCM”(不填写“时间表”字段)。哦,并将分支设置为“构建为主”分支。

可能重复的分支听起来应该将“构建分支”限制为仅主分支,而不是所有分支?如果您正在轮询,则不需要挂钩。由于您对master感兴趣,请确保您对其进行了配置(“要构建的分支”)。根据我的回答中的文档,标记poll SCM仅用于标识要通知git推送到git插件的作业。post-receive钩子实际上是告诉Jenkins构建的,而不是轮询结果(因此不需要时间表,也不应该填写时间表)。关于进一步的细节,这里是Git插件作者的一篇文章,它是在实现此功能时创建的。