部署源代码以外的文件



我开始为我们的发布过程准备一个路线图。我们目前用乌龟svn和蚂蚁作为建筑源。我正在考虑实施持续集成,并想知道以下选择的正确方向:

首先,当前的流程是这样的:开发人员处理一个文件,将该文件直接提交到repo。其他人则会运行tortoise update命令来拉入所需的更改。在构建服务器上遵循相同的过程,其中将更新源代码,构建然后部署到qa和生产服务器。然而,这个过程缺乏对回购的控制,因为在更新期间,如果两个开发人员在同一个文件上修复两个不同的问题,也会拉出不需要的代码。一个被qa认可,另一个被拒绝。我怎样才能克服这种情况呢?

其次,除了源代码,我们有一堆其他文件,如xml文件,css,js等。如何自动部署这些文件?我已经在本地机器上配置了cruiscontrol,它在执行构建时工作得很好,但现在确定如何处理其他文件,因为在生产中更新这些文件似乎有风险且容易出错。这方面的任何建议都会很有帮助。

您可以尝试将PowerShell与CruiseControl集成,我们的团队在构建过程中使用CC fire,然后PowerShell将生成的项目文件(代码和其他)复制到生产或测试站点或任何地方。

我建议您在Trunk之外创建一个候选分支,并将其指定为您的集成代码,以处理缺乏存储库控制的问题。一旦它解决了,并且必要的更改已经提交或提取,将其提升到回归以进行进一步的测试。然后,一旦测试成功,将其推广到生产环境。

在这个过程中,您的开发人员不会直接提交到生产中,而是通过一个迭代过程产生一个新的生产存储库,它的更改可以重新集成到Trunk中,以便在下一个版本中重新启动该过程。

最新更新