Continuous integration VSTS最小化获取源任务

Continuous integration VSTS最小化获取源任务,continuous-integration,azure-devops,azure-pipelines,Continuous Integration,Azure Devops,Azure Pipelines,我们有一个VSTS构建设置。目前,我们有一个存储库承载多个服务。我们对每个服务都有一个构建定义,并且只有当当前服务被触发模式触发时,才会触发每个服务。 现在的问题是,每个构建定义(即单个存储库)都会让GetSource下载整个repo,而且我们也会进行清理。 我一直在搜索,看看是否有像触发器这样的解决方案,我们可以在其中设置一个模式,只获取存储库下载的一部分。这应该是为了减少构建/下载时间 一个解决方法可能是不要每次清理一个存储库或创建多个存储库。目前,我们希望避免后者 让我听听是否有人知道一个

我们有一个VSTS构建设置。目前,我们有一个存储库承载多个服务。我们对每个服务都有一个构建定义,并且只有当当前服务被触发模式触发时,才会触发每个服务。 现在的问题是,每个构建定义(即单个存储库)都会让GetSource下载整个repo,而且我们也会进行清理。 我一直在搜索,看看是否有像触发器这样的解决方案,我们可以在其中设置一个模式,只获取存储库下载的一部分。这应该是为了减少构建/下载时间

一个解决方法可能是不要每次清理一个存储库或创建多个存储库。目前,我们希望避免后者


让我听听是否有人知道一个好的解决方案。

在获取源代码步骤中无法指定要下载的文件。相反,VST将下载整个回购协议

解决方法设置为Clean选项false,以便在获取源步骤中仅更新修改的文件和新添加的文件


您使用的是Git还是TFVC?更好的方法是将项目分开,将公共项目打包为nuget包并上传到feed。谢谢。这也是我们的选择之一,唯一的一点是“在干净的机器上建造总是好的”。重新思考这个问题,将我们的回购分成更多的部分也是一个好主意,因为它包含独立的服务,只是多做一点工作。如果您的回购包含不相关的工作,您应该将它们分成单独的回购。它还可以帮助你更清楚地跟踪不同作品的版本。毫无疑问。和往常一样,我们只需要找到合适的时间去做。