返回介绍

I. 教程

II. SQL 语言

III. 服务器管理

IV. 客户端接口

V. 服务器端编程

VI. 参考手册

VII. 内部

VIII. 附录

F.3. 通过 CVSup 获取源代码

发布于 2019-09-30 03:14:14 字数 3477 浏览 1085 评论 0 收藏 0

使用匿名 CVS 检索 PostgreSQL 源码树的另一个方法是 CVSup 。CVSup 是由 John Polstra (<jdp@polstra.com>) 开发的,用于为 FreeBSD 项目 分发 CVS 仓库和其它文件树。

使用 CVSup 的主要优点是它可以可靠地在你的本地机器上复制整个 CVS 仓库,允许快速的本地使用 cvs 操作(比如 logdiff)。其它优点包括与 PostgreSQL 服务器的快速同步,因为它使用一种高效的流传输协议,该协议只传输最后更新(以来)的修改。

F.3.1. 准备一个 CVSup 客户端系统

做这件事需要为 CVSup 准备两个目录区域:一个本地 CVS 仓库(或者就是一个目录区域—如果你只是抓取一个快照而不是整个仓库,见下文)和一个本地 CVSup 簿记区域。这些东西可以在同一个目录树里面共存。

确定你将在哪个目录里面安放你的 CVS 仓库的本地拷贝。在的一个系统中,最近在 /home/cvs/ 设立了仓库,但是以前把它放在 /opt/postgres/cvs/ 里的一个 PostgreSQL 开发版的目录树里。如果你想把你的仓库放在 /home/cvs/ ,那么把

setenv CVSROOT /home/cvs

放到你的 .cshrc 文件中,或者根据你用的 shell 把类似的行放到 .bashrc.profile 文件里。

cvs 仓库区域必须被初始化。一旦设置了 CVSROOT ,那么初始化可以简单地用下面的命令完成:

cvs init

之后,你列举 CVSROOT 目录时,你至少能看到一个名为 CVSROOT 的目录。

$ ls $CVSROOT
CVSROOT/

F.3.2. 运行 CVSup 客户端

先证实 cvsup 在你的路径里;在大多数系统上你可以键入下面命令核实这些

which cvsup

然后,只需要用下面命令运行 cvsup :

cvsup -L 2 postgres.cvsup

这里的 -L 2 打开了一些状态消息,这样你就可以监控更新的进展过程,而 postgres.cvsup 是你赋予你的 CVSup 配置文件的路径和名称。

这里是一份为特定安装修改过的 CVSup 配置文件,它维护着一个完整的本地 CVS 仓库:

# This file represents the standard CVSup distribution file
# for the PostgreSQL ORDBMS project
# Modified by lockhart@fourpalms.org 1997-08-28
# - Point to my local snapshot source tree
# - Pull the full CVS repository, not just the latest snapshot
#
# Defaults that apply to all the collections
*default host=cvsup.postgresql.org
*default compress
*default release=cvs
*default delete use-rel-suffix
# enable the following line to get the latest snapshot
#*default tag=.
# enable the following line to get whatever was specified above or by default
# at the date specified below
#*default date=97.08.29.00.00.00

# base directory where CVSup will store its 'bookmarks' file(s)
# will create subdirectory sup/
#*default base=/opt/postgres # /usr/local/pgsql
*default base=/home/cvs

# prefix directory where CVSup will store the actual distribution(s)
*default prefix=/home/cvs

# complete distribution, including all below
pgsql

# individual distributions vs 'the whole thing'
# pgsql-doc
# pgsql-perl5
# pgsql-src

在上面的步骤里,如果你声明 repository 而不是 pgsql ,那么你就会得到 cvsup.postgresql.org 上面的一个完整的仓库拷贝,包括其 CVSROOT 目录。如果这么做,你可能会希望排除那些目录中的某些文件,以便你做本地的修改,方法是使用一个 refuse 文件。比如,对于上面的设置,你可以在 /home/cvs/sup/repository/refuse 里面放下面这些行:

CVSROOT/config*
CVSROOT/commitinfo*
CVSROOT/loginfo*

参考 CVSup 的手册页获取如何使用拒绝(refuse)文件的信息。

下面的是 PostgreSQL ftp 站点 建议的 CVSup 配置文件,它将只是抓取目前(版本)的快照:

# This file represents the standard CVSup distribution file
# for the PostgreSQL ORDBMS project
#
# Defaults that apply to all the collections
*default host=cvsup.postgresql.org
*default compress
*default release=cvs
*default delete use-rel-suffix
*default tag=.

# base directory where CVSup will store its 'bookmarks' file(s)
*default base=/usr/local/pgsql

# prefix directory where CVSup will store the actual distribution(s)
*default prefix=/usr/local/pgsql

# complete distribution, including all below
pgsql

# individual distributions vs 'the whole thing'
# pgsql-doc
# pgsql-perl5
# pgsql-src

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文