pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
由 Marc G. Fournier(<scrappy@hub.org>)写于 1998-11-05
命令 cvs checkout 有一个标志 -r,让你检出模块的某个特定版本。有了这个标志,例如在将来任何时候检索组成模块 `tc' 的 6_4 版本的源码都很容易:
$ cvs checkout -r REL6_4 tc
比如说,如果有人声称那个版本里有一个 bug,而你在当前工作副本中找不到它,这就很有用。
你也可以用 -D 选项检出模块在任一给定日期时的状态。
当你用同一个标记标记多个文件时,可以把这个标记想成“一条画在文件名与版本号矩阵中穿过的曲线”。假设我们有 5 个文件,版本如下:
file1 file2 file3 file4 file5
1.1 1.1 1.1 1.1 /--1.1* <-*- TAG
1.2*- 1.2 1.2 -1.2*-
1.3 \- 1.3*- 1.3 / 1.3
1.4 \ 1.4 / 1.4
\-1.5*- 1.5
1.6
那么标记 TAG 将引用 file1-1.2、file2-1.3 等等。
创建发行分支时,除了在命令中加上 -b 选项之外,其余都是一回事。
于是,为了创建 6.4 发行版,我做了以下操作:
$ cd pgsql $ cvs tag -b REL6_4
这会为 RELEASE 树创建标记和分支。
对于拥有 CVS 写权限的人来说,为不同版本创建目录很简单。首先创建 RELEASE 和 CURRENT 两个子目录,免得把两者弄混。然后执行:
cd RELEASE cvs checkout -P -r REL6_4 pgsql cd ../CURRENT cvs checkout -P pgsql
这会得到两棵目录树:RELEASE/pgsql 和 CURRENT/pgsql。从那时起, CVS 会跟踪哪棵目录树对应仓库的哪个分支,并允许对两棵树独立地进行更新。
如果你只在 CURRENT 源码树上工作,那么一切照旧,就像我们开始标记发行分支之前那样做即可。
在某个分支上完成初始检出之后
$ cvs checkout -r REL6_4
你在该目录结构中做的任何操作都局限于该分支。如果你对该目录结构打了一个补丁,然后在其内部执行
cvs commit
那么补丁会被应用到该分支上,而且只应用到该分支。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。