TeamCity 计划构建未从 VSS 获取所有文件
在 TeamCity 中,如果我触发构建,一切都会正常工作,但是如果调度程序触发构建,它似乎无法从 VSS 获取所有文件。我打开了 clean checkout 目录,所以我不确定它如何确定 VSS 根目录的补丁。
有人对如何让它始终获取所有文件并每次创建新补丁有任何建议吗?
我在下面放置了两个构建日志的开头,您可以看到第一个日志的大小是正确的 249mb,而第二个日志仅传输 2MB。它没有从 VSS 获取的文件似乎是零星的,并且与已更改的内容无关。
手动触发
[23:57:49]:检查更改
[00:09:04]:启用干净构建:从 C:\Builds\Ab 中删除旧文件 2.0
[00:09:04]:清除临时目录:C:\TeamCity\buildAgent\temp\buildTmp
[00:09:05]:签出目录:C:\Builds\Ab 2.0
[00:09:05]:正在更新来源:服务器端结帐... (24m:53s)
[00:09:05]:[更新来源:服务器端结帐...]将执行干净的结帐
[00:09:05]:[更新来源:服务器端结帐...]干净的结帐原因
[00:09:05]:[清理结帐原因]结帐目录为空或不存在
[00:09:05]:[清理结账原因]“构建前清理所有文件”已打开
[00:09:05]:[正在更新源:服务器端签出...]正在为 VCS 根传输缓存的干净补丁:Ab 2.0
[00:09:42]:[更新源:服务器端签出...]在缓存补丁上构建增量补丁
[00:31:50]:[正在更新源:服务器端签出...]正在传输存储库源:到目前为止 124.0Mb...
[00:32:18]:[正在更新源:服务器端结帐...]已传输的存储库源:总计 249.46Mb
[00:32:18]:[更新源:服务器端结帐...]平均传输速度:每秒 183.40Kb
由调度程序触发
[07:45:01]:检查更改< br> [07:55:09]:启用干净构建:从 C:\Builds\Ab 中删除旧文件 2.0
[07:55:22]:清除临时目录:C:\TeamCity\buildAgent\temp\buildTmp
[07:55:22]:签出目录:C:\Builds\Ab 2.0
[07:55:22]:正在更新来源:服务器端结账...(24 分 24 秒)
[07:55:22]:[更新来源:服务器端结帐...]将执行干净的结帐
[07:55:22]:[更新来源:服务器端结帐...]干净的结帐原因
[07:55:22]:[清理结帐原因]结帐目录为空或不存在
[07:55:22]:[清理结账原因]“构建前清理所有文件”已打开
[07:55:22]:[更新源:服务器端结帐...]为 VCS 根目录构建干净补丁:Ab 2.0
[08:19:46]:[正在更新源:服务器端签出...]正在为 VCS 根传输缓存的干净补丁:Ab 2.0
[08:19:47]:[更新源:服务器端结帐...]传输的存储库源:总计 2.01Mb
Within TeamCity if I trigger a build it all works correctly, however if the Scheduler triggers a build it does not seem to get all the files from VSS. I have clean checkout directory turned on, so I am not sure how it determines the patch for the VSS root.
Does anyone have any suggestions on how I can get it to always get all files, and create a new patch each time?
I have put the start of two build logs below, as you can see the first one has the correct 249mb, whereas the second only transfers 2MB. The files it doesn't get from VSS seem sporadic and not in relation to what has changed.
Manual Trigger
[23:57:49]: Checking for changes
[00:09:04]: Clean build enabled: removing old files from C:\Builds\Ab
2.0
[00:09:04]: Clearing temporary directory: C:\TeamCity\buildAgent\temp\buildTmp
[00:09:05]: Checkout directory: C:\Builds\Ab 2.0
[00:09:05]: Updating sources: server side checkout... (24m:53s)
[00:09:05]: [Updating sources: server side checkout...] Will perform clean checkout
[00:09:05]: [Updating sources: server side checkout...] Clean checkout reasons
[00:09:05]: [Clean checkout reasons] Checkout directory is empty or doesn't exist
[00:09:05]: [Clean checkout reasons] "Clean all files before build" turned on
[00:09:05]: [Updating sources: server side checkout...] Transferring cached clean patch for VCS root: Ab 2.0
[00:09:42]: [Updating sources: server side checkout...] Building incremental patch over the cached patch
[00:31:50]: [Updating sources: server side checkout...] Transferring repository sources: 124.0Mb so far...
[00:32:18]: [Updating sources: server side checkout...] Repository sources transferred: 249.46Mb total
[00:32:18]: [Updating sources: server side checkout...] Average transfer speed: 183.40Kb per second
Triggered by the Scheduler
[07:45:01]: Checking for changes
[07:55:09]: Clean build enabled: removing old files from C:\Builds\Ab
2.0
[07:55:22]: Clearing temporary directory: C:\TeamCity\buildAgent\temp\buildTmp
[07:55:22]: Checkout directory: C:\Builds\Ab 2.0
[07:55:22]: Updating sources: server side checkout... (24m:24s)
[07:55:22]: [Updating sources: server side checkout...] Will perform clean checkout
[07:55:22]: [Updating sources: server side checkout...] Clean checkout reasons
[07:55:22]: [Clean checkout reasons] Checkout directory is empty or doesn't exist
[07:55:22]: [Clean checkout reasons] "Clean all files before build" turned on
[07:55:22]: [Updating sources: server side checkout...] Building clean patch for VCS root: Ab 2.0
[08:19:46]: [Updating sources: server side checkout...] Transferring cached clean patch for VCS root: Ab 2.0
[08:19:47]: [Updating sources: server side checkout...] Repository sources transferred: 2.01Mb total
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
签到时的时间戳由客户端计算机设置。因此,如果客户端计算机时间不同步,可能会导致奇怪的行为。
如果客户位于不同时区,情况会更糟。幸运的是,有 支持 VSS 2005 时区。您需要启动VSS admin->工具 -> 选项 -> 时区并选择一个。
客户端计算机可以订阅时间服务器和同步。
The time-stamp on check-in is set by client computer. Therefore if the client machine time is out of sync, it could lead to strange behaviors.
It is even worse if the clients are in different timezone. Fortunately there is aid for VSS 2005 for timezones. You need to start VSS admin-> Tools->Options->TimeZone and pick one.
The client computers could subscribe to timeserver and sync.