我应该将它们作为单独的发布版本使用吗?我要将它们检入主干或分支吗?这是否都在红皮书中,我只是浪费了你的时间?
我应该将它们作为单独的发布版本使用吗?我要将它们检入主干或分支吗?这是否都在红皮书中,我只是浪费了你的时间?
svn copy
的结果。不确定您所说的“分离版本”是什么意思,但我们会从主干或分支中复制需要构建的代码并放入带有描述名称(例如 Proj-1.20.33)的标签文件夹中。
这样,对于我们创建的每个构建版本,我们可以回到该特定版本。通常,您不希望在标签中进行任何实际更改。对于我们而言,我们通过自动化构建过程更改一些代码和安装程序的版本号,因此只有这些更改才会被合并回来,即使这样,只有这些特定文件才会被修改。
《SVN Book》在其Common Branching Patterns和Tags条目中介绍了这一点。
我认识的大多数仍在使用SVN的人在每次发布之前对其主干(或当前生产分支)打标签。
我更喜欢按照以下方式组织我的标签存储库目录:
/tags
/builds
/PA
/A
/B
/releases
/AR
/BR
/RC
/ST
PA
表示预阶段
A
表示Alpha版
B
表示Beta版
AR
表示Alpha发布版
BR
表示Beta发布版
RC
表示发行候选版
ST
表示稳定版
构建版本和发布版本有所不同。
N.x.K
相对应的版本号,其中N
和K
是整数。例如:1.x.0
、5.x.1
、10.x.33
N.M.K
相对应的版本号,其中N
、M
和K
是整数。例如:1.0.0
、5.3.1
、10.22.33
。在某个特定时间点上,tags
存储库目录的结果结构示例如下:
/tags
/builds
/PA
/1.x.0
/1.x.1
/A
/1.x.2
/B
/1.x.3
/1.x.4
/releases
/AR
/1.0.0
/1.1.0
/BR
/1.0.1
/1.0.2
/1.1.1
/RC
/1.0.3
/1.1.2
/ST
/1.0.4
/1.1.3