Jenkins正在构建最新提交,而不是GitHub后期提交钩子指定的提交

Jenkins正在构建最新提交,而不是GitHub后期提交钩子指定的提交,git,github,jenkins,Git,Github,Jenkins,Jenkins似乎构建了未构建的分支,而不是GitHub post commit钩子上指定的分支。我如何告诉Jenkins构建GitHub post commit钩子中指定的分支——即使它以前构建了它 例如,假设开发分支在feature/coolness后面有20个提交,feature/coolness在git散列123abc上,现在我合并了develope,使得develope和feature/coolness在git散列123abc上。同时,feature/unrelated具有新的提交,因

Jenkins似乎构建了未构建的分支,而不是GitHub post commit钩子上指定的分支。我如何告诉Jenkins构建GitHub post commit钩子中指定的分支——即使它以前构建了它

例如,假设开发分支在feature/coolness后面有20个提交,feature/coolness在git散列123abc上,现在我合并了develope,使得develope和feature/coolness在git散列123abc上。同时,feature/unrelated具有新的提交,因此任何分支上的最新提交都是feature/unrelated。我将开发分支推到GitHub,Jenkins构建feature/Unrelated而不是develop

GitHub设置为通过触发Jenkins,在提交GitHub时,Jenkins确实被触发。我已经向发送了post-commit钩子,并验证了负载具有正确的git哈希和分支名称

Jenkins已设置为构建存储库url
git@github.mygithubenterpriseurl.com:user/project.git
和所有分支(分支说明符=
***
)所有其他Jenkins SCM设置都是它们的默认设置

在构建中,我看到以下几行:

Fetching upstream changes from git@github.mygithubenterpriseurl.com:user/project.git
getCandidateRevisions(false,null,,,,remoteUrls=[git@github.mygithubenterpriseurl.com:user/project.git],buildsByBranchName={...snip...},lastBuild=Build #742 of Revision bd40a4956b3f1b6a70552b86bfd6df9a7226dca3 (origin/feature/irrelevant)]) considering branches to build
Seen branch in repository origin/develop
Seen branch in repository origin/master
Seen branch in repository origin/feature/coolness
Seen branch in repository origin/feature/irrelevant
Seen branch in repository origin/release/name
Seen 7 remote branches
Starting with all the branches: [...snip...}
After filtering out what's already been built: [Revision e6a90ad3fa4c02864f36647d77db43721b991992 (origin/feature/irrelevant)]
Checking out Revision e6a90ad3fa4c02864f36647d77db43721b991992 (origin/feature/irrelevant)
一旦它进入我的构建脚本,我就回显
$GIT_HASH
$GIT_BRANCH
,并得到错误的东西:
GIT_HASH=e6a90ad3fa4c02864f36647d77db43721b991992
GIT_BRANCH=origin/feature/uncert

完成后,它将构建最新的提交,而不是git哈希上指定的提交

詹金斯是v。1.551,以及我的已安装和活动Jenkins插件和版本列表:

active-directory: 1.24
analysis-core: 1.56
ansicolor: 0.3.1
ant: 1.2
build-flow-plugin: 0.10
buildgraph-view: 1.1.1
cobertura: 1.9.5
conditional-buildstep: 1.3.3
config-file-provider: 2.7.4
copy-to-slave: 1.4.3
credentials: 1.10
cvs: 2.11
envfile: 1.2
envinject: 1.89
external-monitor-job: 1.2
ezwall: 0.2
findbugs: 4.56
git-client: 1.8.0
git-parameter: 0.2
git: 2.2.1
github-api: 1.44
github-oauth: 0.14
github: 1.8
ivy: 1.23.2
javadoc: 1.1
jobConfigHistory: 2.6
ldap: 1.8
logstash: 0.8.0
mailer: 1.8
matrix-auth: 1.2
maven-plugin: 2.2
monitoring: 1.50.0
notification: 1.5
nunit: 0.15
pam-auth: 1.1
parameterized-trigger: 2.24
postbuildscript: 0.16
publish-over-ssh: 1.11
pwauth: 0.4
role-strategy: 2.1.0
run-condition: 1.0
scm-api: 0.2
scp: 1.8
sonar: 2.1
ssh-credentials: 1.6.1
ssh-slaves: 1.6
ssh: 2.4
subversion: 2.2
testng-plugin: 1.6
token-macro: 1.10
translation: 1.11
vsphere-cloud: 1.1.6
windows-slaves: 1.0
xunit: 1.84

拉请求不会做你想做的吗?测试拉请求/合并,并实际提交和推送它,如果生成成功,则显示此功能不存在。是否建议添加它是一个问题。特别是从webhook中只提取存储库url和提交者名称,并丢弃其余数据。。。包括git散列