You are here

Drupal专业开发指南 第21章 从CVS签出Drupal

我们将学习如何在命令行中使用CVS。现在有许多图形化的CVS客户端,一旦学会了这些基本的命令以后,你应该能够很容易的实用这些图形化的CVS客户端了。Windows用户通过安装Cygwin环境(参看http://drupal.org/node/150036),就可以使用CVS命令行了。如果你使用的是CVS命令行客户端,那么这会便于你与社区中的其它开发者交流CVS问题。

    用CVS行话来说,你将需要从官方的CVS资源库中签出一个Drupal的工作拷贝。这可能有点唠叨,但是使用正确的术语是非常重要的。下面是一个CVS命令,它用来从CVS服务器上获取Drupal 6.2:
 
cvs -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal checkout -d
~/www/drupal6 -r DRUPAL-6-2 drupal
 
    让我们来分解一下这个命令。cvs执行一个CVS客户端;也就是说,它在你的计算机上运行一个名为cvs的程序:
 
cvs -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal checkout -d
~/www/drupal6 -r DRUPAL-6-2 drupal
 
    cvs中的选项–d,代表“目录”,它用来指定CVS资源库的位置:
 
cvs -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal checkout -d
~/www/drupal6 -r DRUPAL-6-2 drupal
 
    一个资源库,用CVS的话来说,就是一个使用CVS维护的文件树所在的位置。现在,如果资源库也位于同一台计算机上,那么-d选项就可以简单许多:cvs -d /usr/local/myrepository。然而,Drupal的资源库是位于远程服务器上的,所以我们需要指定更多的连接参数。让我们更具体的分析一下这个命令。
    -d选项的每个参数都使用冒号进行了隔离。pserver代表“密码验证服务器”,它是用来连接到Drupal资源库的连接方法。然而,CVS也可以通过其它协议进行连接,比如SSH。
    接着,指定了用户名和密码。对于Drupal CVS资源库,这两者是一样的:anonymous。跟在@符号后面的是要连接的主机名:cvs.drupal.org。最后,我们需要指定资源库在远程主机上所处的位置:/cvs/drupal。
 
注意 当你通过了CVS服务器的一次认证以后,下次你就不需要再次认证了,因为在你的根目录下将创建一个名为.cvspass的文件,它存储了登录信息。接下来,应用于这个资源库的CVS命令,就不再需要使用这个全局的-d参数了。
 
    现在,连接参数已经建立,我们可以指定cvs实际执行的命令了;在这里,我们使用checkout命令从Drupal资源库中获取一个工作拷贝:
 
cvs -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal checkout -d
~/www/drupal6 -r DRUPAL-6-2 drupal
 
不要将下面的-d与前面的全局选项-d混淆了:
 
cvs -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal checkout -d
~/www/drupal6 -r DRUPAL-6-2 drupal
 
    这个-d用来,将资源库的一个工作拷贝存放在你计算机上的drupal6目录中,这个目录位于根目录下面的www目录的下面。这是一个可选的参数,如果没有这个参数,那么就使用资源库的名字在本地创建一个文件夹,用来保存工作拷贝。由于在这种情况下,资源库的名字为drupal,所以它将创建一个名为drupal的文件夹,来保存资源库的工作拷贝。
    -r参数代表“修订本”。一般来说,它应该是一个标签或者分支。我们将在接下来讨论什么是标签和分支。在前面的命令中,我们请求名为DRUPAL-6-2的修订本,这里的DRUPAL-6-2是一个标签,对应于Drupal 6.2发布。你可以将它替换为Drupal当前版本的标签。
 
cvs -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal checkout -d
~/www/drupal6 -r DRUPAL-6-2 drupal
 
    Drupal核心的所有标签和分支的列表,可参看http://drupal.org/node/93997
 
    最后,drupal是要签出的资源库的名字。
 
cvs -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal checkout -d
~/www/drupal6 -r DRUPAL-6-2 drupal
 老葛的Drupal培训班 Think in Drupal

Drupal版本: