CVS服务器与客户端配置指南


1 CVS 服务器配置 1.1 CVS 下载 服务器端必须首先安装 CVSNT 才能架设一台 CVS 服务器(客户端如有 MyEclipse,则可以选择不安装)。 CVSNT 下载地址:http://www.march-hare.com/cvsnt/features/cvsnt/ 也可以直接点击这里进行下载:http://march-hare.com/archive/cvsnt-2.5.03.2382.msi 1)打开页面的右下方 Free Download,选择 2)选择 Windows 版本 3)单击 Click Here 即可下载 1.1 安装 CVSNT 安装时只需要注意选择 Modify(典型)安装,一路 NEXT 即可。安装完成之后会提示是否重启,这里建 议按照提示重启一次比较好,以便后面进行设置。 1.2 建立 Windows 系统账户 1)[注:前提,以下操作全部是在超级管理员用户下进行,即 administrator 用户。否则环境变量将不起作用]右键 单击我的电脑 à 管理 à 计算机管理 à 本地用户和组 à 用户 à (右键)新用户。 2)本例中添加的新用户为 CVSUser,并设置密码。将用户下次登录时须更改密码取消勾选,勾选用户不能更改密码。 3) 本例仅示例一个用户的建立方法,在实训中,需要涉及到小组 N 个人员,设置不同目录的不同访问权限,故应根 据实际再建用户(如本例后边以两个用户为例,即一个用户(PM[项目经理])对某个文件夹[cmm]有写有读的权限, 另一用户(TM[测试经理])只有读的权限)。 那么我们在此也需要按此方法再建 PM 和 TM 两个用户。 1.3 CVS 简介 CVS 是一个 C/S 系统,多个开发人员通过一个中心版本控制系统来记录文件版本,从而达到保证文件同步的目的。 工作模式如下: CVS 服务器 (文件版本库) (版本同步) 开发者 1 开发者 2 开发者 3 CVS(Concurrent Version System)版本控制系统是一种 GNU 软件包,主要用于在多人开发环境下的源码 的维护。实际上 CVS 可以维护任意文档的开发和使用,例如共享文件的编辑修改,而不仅仅局限于程序设计。CVS 维 护的文件类型可以是文本类型也可以是二进制类型。CVS 用 Copy-Modify-Merge(拷贝、修改、合并)变化表支持 对文件的同时访问和修改。它明确地将源文件的存储和用户的工作空间独立开来,并使其并行操作。CVS 基于客户端/ 服务器的行为使其可容纳多个用户,构成网络也很方便。这一特性使得 CVS 成为位于不同地点的人同时处理数据文件 (特别是程序的源代码)时的首选。 所有重要的免费软件项目都使用 CVS 作为其程序员之间的中心点,以便能够综合各程序员的改进和更改。这些项 目包括 GNOME、KDE、THE GIMP 和 Wine 等。 CVS 的基本工作思路是这样的:在一台服务器上建立一个源代码库,库里可以存放许多不同项目的源程序。由源 代码库管理员统一管理这些源程序。每个用户在使用源代码库之前,首先要把源代码库里的项目文件下载到本地,然 后用户可以在本地任意修改,最后用 CVS 命令进行提交,由 CVS 源代码库统一管理修改。这样,就好像只有一个人在 修改文件一样,既避免了冲突,又可以做到跟踪文件变化等。 2 CVS 服务器端配置 参考网站:http://zhidao.baidu.com/question/10770750.html?si=1 2.1 配置服务器端 CVS 文件存放位置 打开 CVS 控制面板 1) 开始菜单 à 程序 à CVSNT à CVSNT Control Panel 2) 打开 Repository configuration 选项卡 à add à Server Settings 3) Location:选择用来存放服务器端 CVS 文件的位置(本示例为 F:/B2C/cmm), Name 会根据你建立的路径自动 生成。该选项的作用是作为客户端添加 CVS 资源库时的资源路径。 4) 单击 OK。提示此目录不存在,这里点击是(Y)进行初始化该目录。 注:此时再回到刚建立的目录下,则会生成一个名为的 目录,其中包含了很多初始化的资源配 置文件,其它文件类似。 5) 打开 Server Settings 选项卡: Run as:选择登录服务器的用户名(本例为 OracleServer\administrator) Default:选择服务器主机名(本例为 OracleServer) Temporary:选择一个存放临时文件的目录 其它设置都为默认,最后确定完成。 2.2 配置 Windows Server 环境变量 右键我的电脑 à 属性 à 系统属性 à 高级 à 环境变量 à 新建 变量名:CVSROOT 变量值:(本例为 F:\B2C) 说明:也有人提到此处变量应为 CVS 的安装目录, [即 C:\Program Files\CVSNT]具体应为哪个目 录,网上也找不到资料,反正二个设置都无多大变 化,将就着过吧。希望这里同大家共同探讨。。。。 设置完毕即确定。 2.3 为 CVS 添加多用户 1) 开始菜单 à 运行 à 输入 CMD 命令 2) cd 至 CVSNT 安装目录下 (本例为 C:\Program Files\CVSNT) 3) 输入以下命令并回车: >cvs passwd –a CVSUser [此处的-a 代表增加用户相关文档可查阅 CVS 命令说明] C:\Documents and Settings\Administrator>cd C:\Program Files\CVSNT C:\Program Files\CVSNT>cvs passwd –a CVSUser Adding user CVSUser New Password: Verify Password: C:\Program Files\CVSNT>cvs passwd –a TM Adding user TM New Password: Verify Password: C:\Program Files\CVSNT>cvs passwd –a PM Adding user PM New Password: Verify Password: New Password:系统会提示输入密码,输入刚刚作为系统账户所建立的一模一样的密码即可。 注:此处会提示输入两次。 依次将 TM 和 PM 两个用户添加到 CVS 里边, C:\Program Files\CVSNT>cvs passwd –a TM C:\Program Files\CVSNT>cvs passwd –a PM 建立完以后,在 F:\B2C\CVSROOT 会生成一个 passwd 的文件,里边就包含了用户和密码,其中密码是使用 Unix 标准的 crypt()函数加密。 CVSUser:Dc2UWT8ZoTN/k TM:ltYTguVSKAixQ PM:Xvm/idjB325V6 2.4 为 CVS 目录加上用户权限设置 打开命令提示符,cd 至 cmm/CVSROOT 目录下,然后将 TM 用命令 echo 添加至 readers 文件中(CVSROOT 本身是没有这个文件,你只需要此命令即可产生这个文件), 将 PM 用命令 echo 添加至 writers 文件中。 C:\Documents and Settings\Administrator>f: F:\>cd B2C/cmm/CVSROOT F:\B2C\cmm\CVSROOT>echo PM>>writers F:\B2C\cmm\CVSROOT>echo TM>>readers 这里为什么要有 readers 和 writers 两个文件,是因为 CVS 验证用户的时候是通过访问这两个文件来达到 识别用户权限的目的。所以你如果有多个目录,就可以将每个目录下的 CVSROOT 目录中加上 readers 和 writers 两个文件即可。 若需要添加多个用户,只需要重复使用 echo [用户名]>>readers/writers 即可。 最后一步设置 CVS 的验证方式,修改 CVSROOT 下的 config 文件,将其只读属性去掉 # Set this to 'no' if pserver shouldn't check system users/passwords #SystemAuth=yes #将此处默认的 #SystemAuth=yes 修改为 SystemAuth=no 并去掉 # 字符, 表示验证方式不通过 windows 系统验证,而通过 cvs 方式验证。这样我们刚才所做的成果才会起作用。 至此,客户端配置完毕。(终于可以轻松一下了,呵呵。。。) 1 CVS 客户端配置(基于 MyEclipse) 打开 MyEclipse 6.5 ,切换至 CVS 资源库视图,菜单栏上单击 [Windows à Show View à CVS Repositories]若无 CVS Repositories 选项,则需要选择[Other] 在 Show View 中选择 CVS à CVS Repositories New à Repository Location 配置 CVS 资源库 Host:CVS 服务器 IP 地址或服务器名(本例为 OracleServer) Repository path:CVS 资源库名称(本例为/B2C) User:登录连接 CVS 资源库使用的用户名(本例为 CVSUser) Password:登录连接 CVS 资源库使用的密码 点击 Finish 即可完成客户端 CVS 的配置 这里作测试用,故此处设置为记住密码,若无特殊需 要,最好不要记住密码。 添加完 CVS 资源库后的 CVS 资源库面板示意。 小提示:若要删除此 CVS 资源库,则需在先删除 web 项目之后,然后在点击右键,在弹出菜单中点击 Discard Loaction (或直接按下 Delete 亦可) 2 CVS 客户端管理配置项 2.1 将现有项目发布到 CVS 服务器 项目经理或开发组长建立项目框架或者根目录后,需要将项目发布到 CVS 服务器中,之后项目组其它成员可以通 过访问 CVS 服务器来协同完成项目的开发工作。 这里就需要了解如何将需要发布的项目发布到 CVS 服务器中,并协同工作的。 2.2.1 项目经理发布项目框架或者根目录至 CVS 服务器中 在需要发布的项目上右键选择 Team à Share Project 选择刚刚连接了 CVS 资源库 中间两步省略(全部为默认设置),只需要一路 Next 即可,最后 Finish 在如下对话框中需要输入项目的注释,可以选择输入也可以选择不输入 选择 Finish 刚开始对项目在 CVS 服务器中进行发布。 发布成功以后,在本页面显示的就是如下效果:( 在服务器端则会在/B2C 的目录下生成一个项目文件包如本例中的 netStore)且在项目内的每个文件名后增加了版本标志。( 如 1.1) 2.2.2 CVS 资源库文件检出(Check Out) 项目经理或开发组长将项目发布到 CVS 服务器后,开发组其它成员可以通过 CVS 资源库面板将项目检出,并对项 目内容进行最后的编辑与开发。 在 CVS Repositories 面板中,单击 HEAD 分支 系统会弹出提示输入密码的对话框,要求输入与客户端 CVSUser 对应的密码 从检索出来的内容可以看到,刚发布的项目(netStroe)已经出现在了 CVS 资源面板上 右键单击要检出的项目名称,在菜单中选择 Check Out As… 一路 NEXT,在选择检出的工作空间时选择你自己的工作空间 一路 NEXT,最后 Finish 即可将服务器中的项目检出至本机的工作空间。 3 程序员同步 CVS 资源库 客户端可以通过同步服务器端 CVS 资源库来提交、更新本地文件。 3.1 同步 CVS 资源库 右键项目名称,在菜单中选择 Team à Synchronize with Repository 会收到系统提示是否需要打开小组同步视图,点击 Yes 进行确认。 3.1.1 CVS 客户端文件同步 CVS 会自动对服务器端和客户端的文件进行比较,并将两端不一致的文件列出在“小组同步透视图”中,等待客户 端的下一步操作。 可能出现的不一致大致可分为三种: 1. 服务器端文件有更新 与本地文件相比,服务器端文件多出了/少了某个(多个)文件;或者服务器端某个(多个)文件内容在本地文件的 基础上有更新,注意,这里的“更新”指的是“纯更新”,即本地没有对该文件做任何更改,只是服务器端文件有更新。 这种情况下,这些文件在列表中前端将以蓝色箭头标识。 图 22 服务器端文件有更新 中,index.jsp 是服务器端新添加的文件,因此在列表中文件前端用 标识; DeleteShoppingCart.java 是服务器端已经删除、但本地仍然存在的文件,因此在列表中文件前端用 标识; Item.java 是服务器端有改动(本地没有改动)的文件,因此在列表中文件前端用 标识。 双击某个文件,右侧将会列出本地文件与服务器端文件的详细对比: 右键单击某个文件名(如果要对整个项目内文件做相同操作则点击整个项目名),选择【更新】确认利用服务器端 文件更新本地文件。 图 1服务器端文件有更新 图 2本地文件与服务器端文件详细对比 图 3 更新本地文件 2. 客户端文件有更新 与服务器端文件相比,本地文件多出了/少了某个(多个)文件;或者本地某个(多个)文件内容在服务器端文件的 基础上有更新,注意,这里的“更新”指的是“纯更新”,即服务器端没有对该文件做任何更改,只是本地文件有更新。 这种情况下,这些文件在列表中前端将以灰色箭头标识。 图 25 客户端文件有更新 中,address.jsp、order.jsp 和 DeleteShoppingCart.java 是本地新添加的 文件,因此在列表中文件前端用 标识; index.jsp 是本地已经删除、但服务器端仍然存在的文件,因此在列表中 文件前端用 标识;AddShoppingCart.java 是本地做了改动(服务器端没有改动)的文件,因此在列表中文件前端 用 标识。 右键单击某个文件名(如果要对整个项目内文件做相同操作则点击整个项目名),选择【落实】确认提交这些更新 到服务器端。 在弹出的对话框中,单击【完成】,将更新提交到服务器端。 3. 客户端文件与服务器端文件有冲突 本地对某个文件做了改动,同时其他客户端对同一个文件也做了改动并已提交到了服务器端,导致本地版本与服 务器端版本不一致。这种情况下,表明本地文件与服务器端文件有冲突,在列表中这样的文件将以 标识。 图 4客户端文件有更新 图 5 提交本地更新到服务器端 双击有冲突的文件,右侧将会列出本地文件与服务器端文件的详细对比: 这种情况下,客户端只能根据情况手动合并文件,例如如果要将服务器端的改动合并到本地,需要先将服务器端 相关代码拷贝到本地(将鼠标放置到 上,此时会出现 ,点击它即可将远程内容添加到本地)。确认合并完成并 保存文件后,右键单击文件,从菜单中选择【标记为已合并】: 可以发现,原来以 标识的文件已经更改为以 标识: 此时按照 2 中介绍的方法提交本地更新即可。 3.1.2 查找历史记录 CVS 对文件的每个版本都进行了记录,通过历史版本记录可以将文件恢复到某个历史版本。 右键单击某个文件名(注:不是项目名),在菜单中选择【小组】->【显示历史】: 图 6 本地文件与服务器端有冲突 图 7 本地文件与服务器端文件详细对比 图 8 标记为已合并 面板上将会列出该文件的历史记录: 没有版本标识的项表示是本地的一次修订版本(没有版本标识),没有提交到服务器端。 双击某行记录,上方将会显示该记录下的文件内容: 右键单击某个历史版本,菜单中会显示相关操作: 图 9 显示历史 图 11 历史版本文件 图 10 历史版本列表 以下介绍常用的几种操作: 【打开】:显示该版本的文件内容; 【将当前版本与 1.2 进行比较】:详细比较当前版本与 1.2 版本; 【获取内容】:以该版本内容覆盖当前版本内容。 <全章完> 图 12 菜单操作
还剩18页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 15 金币 [ 分享pdf获得金币 ] 2 人已下载

下载pdf

pdf贡献者

znhyz1

贡献于2011-01-16

下载需要 15 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf