我刚刚在 Windows 上设置了 TeamCity 8.0,以便在四个独立的 Git 存储库中构建项目(Visual Studio 解决方案)。它在其中三个上按预期工作,但在一个上它卡在更新源。四个 VCS 根目录的设置是相同的(除了 Git 存储库获取 URL 之外)。
所有 TeamCity 项目都使用服务器端 checkout 。
问题项目的构建日志包含
[15:36:34]: bt1 (running for 41m:38s)
[15:36:34]: Checking for changes (running for 41m:37s)
[15:36:37]: Publishing internal artifacts
[15:36:38]: [Publishing internal artifacts] Sending build.start.properties.gz file
[15:36:37]: Clearing temporary directory: C:\TeamCity\buildAgent\temp\buildTmp
[15:36:37]: Checkout directory: C:\TeamCity\buildAgent\work\62d0281b7178c739
[15:36:37]: Updating sources: server side checkout (running for 41m:34s)
[15:36:38]: [Updating sources] Will perform clean checkout. Reason: Agent doesn't have any version of the project sources
[15:36:38]: [Updating sources] Building and caching clean patch for VCS root: git@qa.company.com:Company.WebSite.git#master
在构建代理上使用 Process Monitor,我可以看到它正在使用 ReadFile 操作敲击以下文件夹。
C:\ProgramData\JetBrains\TeamCity\system\caches\git\git-11F9493A.git\objects\pack\pack-1490ccc8f7896ab876413465c4b48e87448bed35.pack
.pack 文件的大小约为 300MB,我认为这与 Git 存储库的大小相同。
我已经尝试删除此文件夹并重新启动 TeamCity 构建代理和构建服务器 Windows 服务,但它只是重新创建,然后 TeamCity 再次锤击它。
对于如何解决此类问题,还有其他建议吗?
最佳答案
接受的答案中的场景不适用于我。我能够通过简单地为同一个存储库创建一个新的 VCS 根并将其附加到我的构建配置来解决这个问题。
关于git - TeamCity 在一个 Git 存储库上卡在 "Updating sources",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18766875/