在构建服务器上,我设置了 TeamCity (8.1.1),以便在主分支、功能分支之一或使用分支说明符的拉取请求分支之一发生更改时执行构建过程:
+:refs/heads/*
+:refs/pull/(*/merge)
我已经打开了构建代理选项:
teamcity.git.use.local.mirrors=true
它将存储库克隆到构建目录之外的目录中,然后从该本地存储库中提取。
构建过程需要访问 git 存储库和 master 分支,即使是构建功能分支或拉取请求分支之一。然而,TeamCity 只有包含本地存储库中的更改的分支,从而使我的构建失败,例如当更改发生在 issues/mycoolissue 分支上时,这是 TeamCity 工作空间中 git 存储库中存在的唯一分支。
我尝试过表演当地的git fetch
获取 master 分支,但由于本地存储库没有 master 分支,因此失败。虽然我可以添加一个指向源头(github 私有存储库)的远程链接,但这意味着我还必须处理凭据,而且我宁愿让 TeamCity 为我处理所有这些事情。
我的问题是是否有办法告诉 TeamCity 将所有分支拉入本地存储库和工作存储库?
从 TeamCity 10.0.4 开始,您可以通过添加配置参数来做到这一点teamcity.git.fetchAllHeads=true
See here https://teamcity-support.jetbrains.com/hc/en-us/community/posts/206510669-Possible-to-create-a-full-git-clone-on-an-agent-including-all-remote-branches-tags-?page=1#community_comment_115000134930
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)