TFS 2017构建-如何定期清理工作区

TFS 2017构建-如何定期清理工作区,tfs,build,Tfs,Build,我们在TFS项目中有一个“持续集成构建”定义。每次签入时,都会获取、编译源代码,并运行一些自动测试。在构建定义的“存储库”选项卡上,有一个干净的选项,即: 我们目前正在使用TFVC,但正在考虑迁移到Git 目前,我们将clean设置为“false”,因此当构建开始时,构建代理会对源文件进行增量获取。在一天的大部分时间里,这正是我们想要的,因为它确实缩短了构建时间。但是,定期让代理清空构建目录(例如一次/天)似乎是明智的。以某种方式自动化这一点是很好的,例如,只要$(Rev)等于1,即当天的第一次

我们在TFS项目中有一个“持续集成构建”定义。每次签入时,都会获取、编译源代码,并运行一些自动测试。在构建定义的“存储库”选项卡上,有一个干净的选项,即: 我们目前正在使用TFVC,但正在考虑迁移到Git

目前,我们将clean设置为“false”,因此当构建开始时,构建代理会对源文件进行增量获取。在一天的大部分时间里,这正是我们想要的,因为它确实缩短了构建时间。但是,定期让代理清空构建目录(例如一次/天)似乎是明智的。以某种方式自动化这一点是很好的,例如,只要$(Rev)等于1,即当天的第一次构建,它就是真的

我尝试了一些变化,在下拉列表中输入“$(Rev)==1”,或者使用“Variables”选项卡中的变量获取该值,但这两种方法都不起作用。我已经看过了,但它甚至没有指出除了“true”或“false”之外的任何值都是有效值


我欢迎任何关于进一步测试或想法的猜测或建议。

目前,无论您使用的是TFVC和GIT,clean只有两个选项true/false

清洁:

如果将其设置为true,则生成代理将通过以下方式清理repo:

  • 撤消挂起的更改
  • 烧焦
如果要将增量生成定义为,请将此设置为false 提高性能

提示:在这种情况下,如果您正在构建VisualStudio项目,请在 “生成”选项卡中,也可以取消选中“清除”复选框 Studio生成或MSBuild步骤


您可以在这里添加一个,TFS PM将仔细检查您的建议。作为解决办法,您可以在一天结束时添加一个执行clean repo操作。

您使用的是GIT或TFVC的哪个版本控制?解决方法是在生成代理上创建一个计划任务来清理源文件夹,或者在生成定义中添加一个powershell脚本任务来检查版本,然后清理并获取源。谢谢@Patrick MSFT。显然不是我所希望的答案。唉。我已经添加了一个用户语音,因此可以考虑使用。我将研究计划的构建解决方案,但这样就可以清理每个构建代理上每个构建的源文件夹,这一点并不明显。