Download presentation
Presentation is loading. Please wait.
1
Concurrent Versions System (CVS)
版本控制系统简介 车东
2
多人协同开发中的问题 同步的最新修改 文件的版本回溯 多人同时修改同一个文件产生的冲突 项目的分支开发 文件权限控制
3
正确的运行模式 用一个的代码管理库集中管理代码同步 版本库 user1 user3 user2
4
什么是 CVS Concurrent Version System 并发版本控制系统 Unix端服务器 其他平台的客户端 FAQ
其他平台的客户端 FAQ
5
术语 CVSROOT: 代码库 Repository: 项目包 Version: 版本号 Branch: 版本分支
6
CVS开始第一个项目 环境变量$CVSROOT: CVSROOT库初始化:cvs init 项目包首次导入:cvs import
bash: CVSROOT=/home/cvsroot ; export CVSROOT tcsh: setenv CVSROOT /home/cvsroot CVSROOT库初始化:cvs init 项目包首次导入:cvs import cvs import -m "write some comments here" project_name vender_tag release_tag
7
CVS的使用命令 cvs checkout proj_name 导出项目包
cvs commit –m “write comments” file_name 提交更新 cvs update –m “write comments” file_name 同步库 cvs log file_name查看修改日志 cvs diff –r1.2 –r1.3 file_name 查看文件版本区别 cvs add file_name 添加新文件到项目包 cvs remove file_name 从项目包里删除文件
8
CVS的使用流程 cvs checkout(首次导出) cvs up(同步代码)cvs commit(提交修改)cvs up(同步代码)cvs commit(提交修改)….. 恢复到一个旧的版本: 如果用cvs update -r1.2 file.name 这个命令是给file.name加一个STICK TAG: "1.2" ,虽然你的本意只是想将它恢复到1.2版本 正确的恢复版本的方法是:cvs update -p -r1.2 file.name >file.name 如果不小心忘了-p加成STICK TAG的话:用cvs update –A 解决
9
CVS的远程用户认证 通过SSH远程登陆CVS: CVS服务器端SSH端口不在缺省的22
CVS_RSH=ssh; export CVSROOT CVS_RSH CVS服务器端SSH端口不在缺省的22 假设服务器端的ssh端口是34567,客户端,创建ssh_cvs #!/usr/bin/sh ssh -p $* 然后:chmod +x ssh_cvs 设置CVS_RSH=ssh_cvs; export CVS_RSH
10
CVS Web界面访问 方便文件版本跟踪 http://www.freebsd.org/~fenner/cvsweb/
一个功能更丰富的版本
11
CVS vs VSS CVS update/commit CVS没有锁定机制edit/unedit
VSS get_lastest_version /check_in checkout/undo checkout 通用的标记 $Header$ $Author$ $Date$ $Revision$
12
WinCVS http://www.wincvs.org/
Cvs Folders->Macros folder->Change Root Cvs Admin->Preferences cvs server: Authenitication: passwd at cvs server Cvs Admin->Login… Cvs Admin->Checkout module…
13
CVSTrac WEB界面的 CVS用户管理 CVS WEB浏览 BUG TRACKING Wiki讨论版
14
相关资源 CVS HOME: http://www.cvshome.org
CVS FAQ: 相关网站: CVS 免费书: CVS 命令的速查卡片: WinCVS: CVSTrac: A Web-Based Bug And Patch-Set Tracking System For CVS
15
感谢
Similar presentations