繁体   English   中英

使用“导出”从SVN发布然后?怎么升级?

[英]release from SVN using “export” and then? how to upgrade?

使用SVN,我正在考虑使用SVN export命令将第一个版本(版本1.0)发布到生产服务器。

升级的下一步是什么? 例如,如果我想发布下一个1.1的版本,应该怎么做呢? 如果不删除所有文件,有没有办法从标签升级?

一般发布步骤:

  1. 从主/测试分支创建标记 这是发布的代码。 并且不能在没有分支的情况下进行修改。 这是1.0版。 您在生产服务器上构建和部署此代码。

  2. 继续在主分支(主干)中编译版本1.1。 在v1.1结束时,您将创建另一个将发布版本1.1的标记。 等等。

理想情况下,每个版本保留一个标记。 如果有固定点必须转到以前发布的版本,你(1)从该标签创建一个分支 (比如说1.0),(2)修复分支中的问题,(3)从这个分支创建另一个标签发行版1.0.1

请注意,整个过程中不会删除任何文件。 您只是创建新的分支,这是您的代码库的廉价副本


更新

但是,如何在生产中升级到标签1.1? SVN导出是否会覆盖现有文件并删除标签1.1中删除的文件? 这是我的担忧。

两件事情

  1. 出口不会从任何地方删除任何文件。 它下载了您作为参数提供给它的URL的干净副本(没有.svn和其他特定于SVN的东西)。 在这里看到svn export

  2. 创建分支或标记时,您应该复制。 而不是导出然后导入。 最常见的发布流程如下图所示:(对于可悲的艺术抱歉)

具有时间的SVN存储库状态

                                                        /---> Tag 1.0.1(release to prod)
                    /--- Branch 1.0.1 for spot-fixes----|
                   /                                    |
             /---Tag 1.0 (released to prod)             v (merge fixes)    /---Tag 1.1 (released to prod)
 Trunk ----->'------Development for v1.1----------------'----------------->'----Development for v1.2-->  

您看不到任何内容被删除,并且每个版本都有标签。

听起来你想要做一些持续的整合。

您可以挂起各种构建服务器以与SVN服务器集成,这样您就可以迭代地发布构建。

比使用导出手动执行更自动化。

看一下

http://www.thoughtworks-studios.com/go-agile-release-management/

要么

http://www.jetbrains.com/teamcity/

那里还有很多其他人......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM