附录 A. CVS 代码库
目录
PostgreSQL 源代码使用 CVS 代码管理系统存储和管理。
至少有两种方法——匿名 CVS 和 CVSup——可以把 CVS 代码树从 PostgreSQL 服务器拉取到你的本地机器上。
A.1. 通过匿名 CVS 获取源码 #
如果你想定期跟上当前的源码,可以从我们的 CVS 服务器获取它们,然后不时地用 CVS 检索更新。
匿名 CVS
你需要一份本地安装的 CVS(并发版本控制系统),可以从 http://www.cyclic.com/ 或任何 GNU 软件归档站点获取。我们目前推荐 1.10 版(写作时最新的版本)。许多系统默认就装有较新版本的 cvs。
首次登录到 CVS 服务器:
$ cvs -d :pserver:anoncvs@anoncvs.postgresql.org:/projects/cvsroot login系统会提示你输入口令;直接按
ENTER即可。这只需要做一次,因为口令会保存在你主目录的.cvspass中。获取 PostgreSQL 源码:
cvs -z3 -d :pserver:anoncvs@anoncvs.postgresql.org:/projects/cvsroot co -P pgsql这会把 PostgreSQL 源码安装到你当前所在目录的
pgsql子目录中。注意
如果你的因特网链路很快,可能不需要
-z3(它让 CVS 对传输的数据使用 gzip 压缩)。但在调制解调器速度的链路上,它能带来非常大的收益。这个初始检出比直接下载一个
tar.gz文件稍慢一些;如果你用的是 28.8K 调制解调器,预计要花 40 分钟左右。CVS 的优势要等到你以后想更新文件集时才会显现出来。每当你想更新到最新的 CVS 源码时,
cd进入pgsql子目录,然后执行$ cvs -z3 update -d -P这只会获取自你上次更新以来的变更。通常只要几分钟就能完成更新,即使是在调制解调器速度的链路上。
你可以在主目录中创建一个包含以下内容的
.cvsrc文件来省些输入:cvs -z3 update -d -P这会为所有 cvs 命令提供
-z3选项,并为 cvs update 提供-d和-P选项。这样你只需输入$ cvs update即可更新你的文件。
小心
某些较旧版本的 CVS 有一个 bug,会导致所有检出的文件在你的目录中以全局可写的方式存放。如果发现这种情况,可以执行类似这样的命令
$ chmod -R go-w pgsql
来正确设置权限。这个 bug 在 CVS 1.9.28 版中已经修复。
CVS 还能做许多别的事情,例如获取 PostgreSQL 源码的早期版本而不是最新开发版本。更多信息请查阅 CVS 附带的手册,或参见 http://www.cyclic.com/ 上的在线文档。