![](/img/trans.png)
[英]How to upgrade svn client from 1.6.16 to 1.7.2 using TortoiseSVN and PushOk
[英]release from SVN using “export” and then? how to upgrade?
使用SVN,我正在考虑使用SVN export命令将第一个版本(版本1.0)发布到生产服务器。
升级的下一步是什么? 例如,如果我想发布下一个1.1的版本,应该怎么做呢? 如果不删除所有文件,有没有办法从标签升级?
一般发布步骤:
从主/测试分支创建标记 。 这是发布的代码。 并且不能在没有分支的情况下进行修改。 这是1.0版。 您在生产服务器上构建和部署此代码。
继续在主分支(主干)中编译版本1.1。 在v1.1结束时,您将创建另一个将发布版本1.1的标记。 等等。
理想情况下,每个版本保留一个标记。 如果有固定点必须转到以前发布的版本,你(1)从该标签创建一个分支 (比如说1.0),(2)修复分支中的问题,(3)从这个分支创建另一个标签发行版1.0.1
请注意,整个过程中不会删除任何文件。 您只是创建新的分支,这是您的代码库的廉价副本 。
更新
但是,如何在生产中升级到标签1.1? SVN导出是否会覆盖现有文件并删除标签1.1中删除的文件? 这是我的担忧。
两件事情
出口不会从任何地方删除任何文件。 它下载了您作为参数提供给它的URL的干净副本(没有.svn和其他特定于SVN的东西)。 在这里看到svn export
创建分支或标记时,您应该复制。 而不是导出然后导入。 最常见的发布流程如下图所示:(对于可悲的艺术抱歉)
具有时间的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.