我正在运行 TeamCity 来构建一个 .NET 项目(更准确地说是几个项目)。
我应该使用 Rebuild 目标还是 Build 目标?
我想尽量减少构建时间,同时不生成任何未更改的项目的新版本。
使用“构建”目标是否安全?如果以前的项目输出被删除怎么办?我如何验证我可以安全地执行此操作?
最佳答案
如果您需要重建所有项目,例如为了获得连贯的时间戳或版本号,您应该使用rebuild(尽管通常情况下,链接的 AssemblyInfo.cs 中的更改将触发构建还有。)
构建是完全安全的,即使之前构建的构建输出消失了,或者即使构建恰好是在没有构建输出的新构建代理上完成的。在这种情况下,将构建所有必要的项目。
但是,您的 sln/csproj 文件中可能有依赖于(重新)构建的自定义 MSBuild 步骤,在这种情况下您需要更加小心,但除此之外,如果需要,请选择构建。
关于c# - 在构建服务器(CI 服务器)上构建或重建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8227021/