我们使用Jenkins作为我们的CI引擎,它知道如何监控git存储库。出于某种原因,我经常看到
Started by user anonymous
Building in workspace /var/lib/jenkins/jobs/X/workspace
Checkout:workspace / /var/lib/jenkins/jobs/X/workspace - hudson.remoting.LocalChannel@844d88
Using strategy: Default
Last Built Revision: Revision 8422864a9745535d808435bd33ece764fd250358 (origin/HEAD, origin/master)
Fetching changes from 1 remote Git repository
Fetching upstream changes from gitosis@...
Seen branch in repository origin/HEAD
Seen branch in repository origin/master
Commencing build of Revision c1e71af117df3cd63da972f361ad260af6f16bf5 (origin/HEAD, origin/master)
Checking out Revision c1e71af117df3cd63da972f361ad260af6f16bf5 (origin/HEAD, origin/master)
Warning : There are multiple branch changesets here
Parsing POMs
Modules changed, recalculating dependency graph
我的问题是,“警告:这里有多个分支变更集”line_mean_?
答案 0 :(得分:16)
我不是詹金斯专家,但我发现这个问题似乎可以解释警告:
https://issues.jenkins-ci.org/browse/JENKINS-6856
似乎Jenkins构建为处于分离头状态,并且当它检出远程分支(在这种情况下为origin / master)时发生,并且我猜测警告是由于HEAD没有指向本地分支。所以詹金斯已经创建了一个匿名分支。
编辑:在Github上进行了代码搜索,并在Jenkins的GitSCM插件中找到了生成此警告的方法。见here如果revision(您可以在另一个名为git-client-plugin的Jenkins插件中看到)有多个分支指向它,那么GitSCM插件会警告有多个分支。修订版是正在构建的git提交,并且在git中完全可以让多个分支指向同一个提交。
Revision类的注释解释了它:
修订版是对象树中的SHA1和集合 共享此ID的分支机构。与其他SCM不同,git可以具有> 1 分支指向相同的提交。