使用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-->
Run Code Online (Sandbox Code Playgroud)
您看不到任何内容被删除,并且每个版本都有标签.