将持续集成系统提交到存储库是不好的形式

时间:2012-08-31 19:21:02

标签: continuous-integration

我最近负责构建我们的“软件基础架构”,所以我正在组建一个持续集成服务器。

构建完成之后,CI系统会将其创建的一些工件签入到标记中以便以后可以轻松获取(或者如果构建中断,您可以更轻松地重新创建问题) 。)

为了记录,我们在这里使用SVN和BuildMaster(免费版)。

这更像是一个最佳实践问题,而不是一个操作方法问题。 (使用BuildMaster非常容易)

赛斯

2 个答案:

答案 0 :(得分:1)

如果您认为这种方法对您有益,请继续执行。只要您清楚地了解用于构建每个工件的源代码,您就可以了。

您应该将此工件存储库与源代码存储库分开。

为此使用源代码存储库有点奇怪 - 这些通常用于更改的东西,你的工件绝对不应该

源代码存储库也经常用于要检出“所有内容”的上下文中,例如整个主干。对于工件,您通常会查找特定版本,只有在将它们导出到其他介质时才会检出所有这些。

有几个专门用于此目的的工件存储库,例如ArtifactoryApache Archiva,但正确备份的文件服务器将通过考虑访问设置可能是一个简单且足够好的解决方案。 / p>

答案 1 :(得分:1)

我会说将二进制文件作为标签检查是一种气味。您的构建工件应与构建系统中的特定构建版本相关联,并且该构建应与特定的签入相关联。您应该能够从该信息中重新创建确切的源代码。如果您正在寻找的是一站式功能来打开生成破坏版本的精确源代码修订版,我建议您花一些时间来构建一个能够为您完成此功能的Powershell模块。 / p>

带有签名的东西: OpenBuild -projectName“some project name”-buildNumber“some build number”