TeamCity 2023.11.1因无法收集变更导致构建失败,求解决方案
TeamCity 2023.11.1 "Unable to collect changes" 问题解决办法
错误原因分析
报错核心是Git执行fetch时失败,提示Failure updating tracking ref refs/heads/hotfix/pr-7175: Not a ref: refs/heads/feature/pr-6408,说明TeamCity服务器本地的Git缓存仓库中,hotfix/pr-7175这个跟踪引用指向了一个不存在的feature/pr-6408引用,导致变更收集流程中断。由于仅当前实例出现问题,可排除远程仓库或代码本身的问题,锁定为本地缓存损坏。
解决方案
方案1:清理TeamCity Git缓存(推荐)
- 定位报错中的缓存目录:
<TeamCity data dir>/system/caches/git/git-E920A8B4.git - 停止TeamCity服务器进程,避免缓存文件被占用
- 删除上述缓存目录
- 重启TeamCity服务器,系统会自动重新拉取完整的远程仓库数据,重建缓存
方案2:手动修复Git引用(无需重启服务器)
- 登录TeamCity服务器所在主机
- 进入目标缓存目录:
cd <TeamCity data dir>/system/caches/git/git-E920A8B4.git - 查看当前引用状态,确认异常条目:
git show-ref - 删除损坏的跟踪引用:
git update-ref -d refs/heads/hotfix/pr-7175 - 手动执行拉取操作:
git fetch origin - 返回TeamCity界面,重新触发变更收集或启动构建
方案3:验证VCS根配置
- 检查当前实例中
vcsour-app2024-2这个VCS根的分支配置,确认master分支的关联设置未指向已删除的feature/pr-6408分支 - 对比正常实例的VCS根配置,确保两者参数一致,排除配置差异导致的问题
内容的提问来源于stack exchange,提问作者fiat
相关产品推荐
相关产品推荐

