我让jenkins设置构建任何分支并将其合并为master。我也有预先接收脚本,以防止任何开发人员检查master,除非你是用户“hudson”。
它在我们的一个存储库上工作得很好,但另一方面,每当有人推动一个新的远程分支时,hudson正在构建一个暂停的不工作分支并且无法构建,因此每个新推送一个远程分支触发立即构建(接收后脚本调用curl)但是它会尝试构建那个坏分支而不是开发人员推送的分支。
在日志中注意,看起来它正确检测到dhiller-1是最新推出但后来决定构建dhiller-refactor,这是不完整但保存在远程存储库中,因为它是一个仍在进行中的大型重构(仅用于备份目的)
...日志
Started by user anonymous
Checkout:workspace / C:\AAROOT\Jenkins2\jobs\toolbar\workspace - hudson.remoting.LocalChannel@aab87f
Using strategy: Default
Last Built Revision: Revision 597af7a5d808b28f492257f311af9171f03e6891 (origin/dhiller-1)
Checkout:workspace / C:\AAROOT\Jenkins2\jobs\toolbar\workspace - hudson.remoting.LocalChannel@aab87f
Fetching changes from 1 remote Git repository
Fetching upstream changes from ssh://hudson@192.168.111.130/opt/toolbar
Seen branch in repository origin/HEAD
Seen branch in repository origin/dhiller-1
Seen branch in repository origin/dhiller-2
Seen branch in repository origin/dhiller-refactor
Seen branch in repository origin/dhiller-test
Seen branch in repository origin/master
Commencing build of Revision 2c56d8645871ea2929c717e15038a5b79c0b43e1 (origin/dhiller-refactor)
Merging Revision 2c56d8645871ea2929c717e15038a5b79c0b43e1 (origin/dhiller-refactor) onto master
ERROR: Branch not suitable for integration as it does not merge cleanly
Build did not succeed and the project is configured to only push after a successful build, so no pushing will occur.
Finished: FAILURE
答案 0 :(得分:3)
好吧,我终于修复了它只是通过完全删除那个远程分支并创建一个新的,只有使用文件副本的那个坏分支的代码所以是的,我丢失了该分支的任何历史,但它修复了问题....这是一个巨大的痛苦,现在似乎再次工作。
答案 1 :(得分:0)
我有同样的问题。奇怪的是Jenkins(git-plugin)发布了
错误:分支不适合整合,因为它没有干净地合并
消息,虽然我没有选中“构建前合并”选项集。查看git-plugin here的源代码,但它必须与该选项有关。启用该选项,保存配置,禁用该选项并再次保存配置,为我解决了问题;它不会再尝试合并了。