it-swarm.cn

“ Nightly Builds”是什么意思?

我使用开放源代码项目已有一段时间,并且一直在开发开放源代码应用程序,每隔一段时间我会碰到“ Nightly Build”一词,而我一直对它的真正含义感到好奇。从字面上看,这是否意味着这些项目纯粹是作为副项目完成的(通常在每个人完成日常工作后的晚上进行),并且没有真正的贡献者/专门的开发团队?还是比这更复杂?

60
dbramhall

不,这意味着每天晚上都会构建已检查到源代码管理中的所有内容。该构建是“每晚构建”。

77
CaffGeek

通常,这意味着 自动构建 每天执行一次,对于大多数开发人员而言,通常在一天结束后执行。对于具有多个时区的开发人员的项目,通常是一个折衷时间。这个想法是,每个要“今天”签入代码的人都已经这样做了,自动构建将确保所有内容都能编译,并希望运行单元测试和任何其他自动测试等,然后生成最终安装程序/可执行等.

37
Мסž

它表示在开发的每一天结束时执行的构建。如果您使用的是持续集成服务器,则通常会将其配置为生成代码并在每次签入时运行单元测试。每天结束时,您可能希望运行更广泛的测试,回归测试和集成测试,每次检入花费的时间太长,这些操作将在每晚构建后触发。如果您有完整的连续交付管道,则夜间构建也可以用于将构建的代码部署到环境中以进行用户测试。

13
John Channing

该术语通常用于大型项目,在这种项目中,从源头完全重建成品需要太长的时间,单个开发人员无法将其作为正常开发周期的一部分来完成。

取而代之的是,夜间会自动完成一次完整的重建,因此构建计算机有8-10-12个小时的时间进行构建,并为第二天早上来的开发人员做好了准备,因此他们可以继续在顶部单独工作新版本。

如今,经常会在项目中进行大量测试,以确保代码正确运行,并从源代码生成和发布文档(例如javadoc)。

7
user1249

每晚构建是一件好事,如果他们破坏了构建,它们会立即反馈给开发人员。每晚进行构建意味着该软件稳定并且很可能为新用户构建。非常规构建的软件很难发布。

引用自: https://chess.eecs.berkeley.edu/softdevel/nightly.htm

0
khaja