"警告:这里有多个分支变更集"是什么意思?

Tho*_*sen 11 git jenkins

我们使用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
Run Code Online (Sandbox Code Playgroud)

我的问题是,"警告:这里有多个分支变更集"line_mean_?

Dan*_*Lee 16

我不是詹金斯专家,但我发现这个问题似乎可以解释警告:

https://issues.jenkins-ci.org/browse/JENKINS-6856

似乎Jenkins构建在独立头状态,并且当它检出远程分支(在这种情况下为origin/master)时发生,并且我猜测警告是由于HEAD没有指向本地分支.所以Jenkins创建了一个匿名分支.

编辑:在Github上进行了代码搜索,并在Jenkins的GitSCM插件中找到了生成此警告的方法.看到这里

如果修订版(你可以在另一个名为git-client-plugin的Jenkins插件中看到)有多个分支指向它,那么GitSCM插件会警告有多个分支.修订版是正在构建的git提交,并且在git中完全可以使多个分支指向同一个提交.

Revision类的注释解释了它:

Revision是对象树中的SHA1,以及共享此ID的分支集合.与其他SCM不同,git可以在同一次提交时指向> 1个分支 .