↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

不受支持的版本: 7.3 / 7.2 / 7.1
历史版本PostgreSQL 7.2 已于 2007 年 2 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页。

A.2. CVS 树的组织 #

作者

由 Marc G. Fournier()写于 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 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。