Jenkins和Git是什么?

18
我们公司目前正在使用Subversion,同时使用Jenkins来拉取软件配置管理(SCM)的变更,如果有任何变化,将进行Maven构建。
我们现在要转移到Git,但我没有看到如何拉取Git仓库的变更... 我是不是漏看了什么?

我不太了解Jenkins的细节。但是当然可以实现,通常CI系统使用Git钩子来触发操作,也许这可以帮助您使用关键字完成研究。 - Simon Boudrias
@CharlesB 不是重复的问题,那个问题只针对触发一个分支。 - CIGuy
我没有看到任何 Git 插件。 - techsjs2013
5个回答

24

您可以配置Jenkins Git插件来轮询您的代码库以获取更改,但建议的方法是向您的代码库添加post-receive(也称为post-commit)钩子。这样,每次提交时Jenkins将立即收到通知。

您可以在此处阅读更多信息:https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin


10
您可能没有安装Git插件,这就是为什么您无法看到选项的原因。而对于Subversion,您永远不必这样做,因为该插件默认安装。您可以使用Jenkins提供的自动安装程序来安装插件,或者手动安装(如果您在公司防火墙后面会很有用)。
一些有用的链接: Git插件:https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin GitHub插件:https://wiki.jenkins-ci.org/display/JENKINS/GitHub+Plugin Bitbucket插件:https://wiki.jenkins-ci.org/display/JENKINS/Bitbucket+OAuth+Plugin Google Code插件:https://wiki.jenkins-ci.org/display/JENKINS/Repo+Plugin Git参数插件:https://wiki.jenkins-ci.org/display/JENKINS/Git+Parameter+Plugin GitLab钩子插件:https://wiki.jenkins-ci.org/display/JENKINS/Gitlab+Hook+Plugin 所有插件的大列表:https://wiki.jenkins-ci.org/display/JENKINS/Plugins#Plugins-Sourcecodemanagement

CloudBees提供Jenkins持续集成和Git托管服务,这也可能有助于您http://www.cloudbees.com/#slide-2

祝您迁移顺利。我们发现在执行类似的迁移时,Maven发布插件中存在一些问题 - 如果我再次执行此操作,我将先进行一些原型版本的发布。


8
首先,您需要配置Jenkins Git插件,其中包括Git客户端、Git钩子等。然后转到GitHub帐户并导航至设置 → 服务挂钩 → WebHook URL。
您需要提供一个机器主机名,在该主机上运行Jenkins以及Jenkins端口号。
WebHook URL的格式类似于-http:// host_name:8080/github-webhook/(其中8080是默认的Jenkins端口)。
当您将更改推送到GitHub时,GitHub将使用POST请求命中这些WebHook URLs,同时传递有关推送的信息。
Jenkins提供了一些构建触发选项,它们如下所示 -
1. 在将更改推送到GitHub时构建。 2. 轮询SCM 3. 按时间间隔构建 4. 等等......
选择最适合您要求的选项。

1
为了在Jenkins中使用Git,需要安装以下两个插件:
1. Git-Client-plugin
2. Git-plugin

第一个插件(Git-Client-plugin)是执行git操作的低级API(如git add,git commit,git push,git clone等)。
第二个插件(Git-plugin)为Jenkins作业添加了Git作为SCM选项。
第二个插件依赖于第一个插件的功能,因此Git与Jenkins一起使用时必须同时存在这两个插件。

1
Jenkins有一个Git插件,其中包含许多您可能需要的有用信息。 这里是一篇也许能帮助您的文章。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接