ubuntu cvs

  1. # apt-get install cvs
2. # apt-get install cvsd
此时会问你repository的位置,我按默认配制,没做修改,如果你不清楚的话,建议你也不要改。

3. 创建/myrepos
# mkdir
/var/lib/cvsd/ myrepos

4. 初始化这个/myrepos
# cvs -d /var/lib/cvsd/myrepos init

5. 设置cvsd的用户认证方式,缺省的是系统级的,一般来说cvs的用户都是单独设置的
# vi /var/lib/cvsd/myrepos/CVSROOT/config
添加以下几行:
SystemAuth=no
PamAuth=no
LockDir=/tmp/myrepos
然后保存退出。注意此处的/tmp/myrepos是指相对于RootJail的路径。(看了/etc/cvsd/cvsd.conf里面确实有个RootJail /var/lib/cvsd,估计上面的路径都是和这个有关)

6. 创建LockDir
# mkdir /var/lib/cvsd/tmp/myrepos

7. 添加用户
# cvsd-passwd /var/lib/cvsd/myrepos dingdang #你想建的用户代替"dingdang"

8. cvsd默认端口是2401,你可以改别的端口
# vim /etc/cvsd/cvsd.conf
Listen * 2401
此外缺省有:
RootJail /var/lib/cvsd
Repos /myrepos
注意此处的Repos的路径是相对于RootJail的,前面安装cvsd时默认也是这样的,你不需要做修改。

10. # chown cvsd:cvsd /var/lib/cvsd -R     
让cvsd运行这个服务,这个用户在安装cvsd时已经建好。

11. 重新启动cvsd。
# /etc/init.d/cvsd restart
* Restarting cvs pserver chroot wrapper cvsd                                       [ OK ]




test cvs
-----------------------------------------------
# vi /etc/bash.bashrc
export CVSROOT=:pserver:dingdang@localhost:/cvsroot


# cd /home/dingdang
# cvs login
# cvs checkout .
# touch test.c
# cvs add test.c
# cvs ci


# ls
/var/lib/cvsd/ myrepos
CVSROOT test.c,v












Linux CVS
1 初始环境变量CVSROOT
CVSROOT=:pserver:anonymous@210.77.60.218:/www/cvs/cvsroot
或者
export CVSROOT=:pserver:anonymous@210.77.60.218:/www/cvs/cvsroot
一般来说如果CVSROOT已经是环境变量,不必重复export命令


2 登录CVS服务器
cvs login
然后会提示输入密码,如果没有密码就回车。


3 引入checkout
可以将整个project_name项目checkout到本地
cvs co project_name

注意:第一次导出以后,就不是通过cvs checkout来同步文件了,而是要进入刚才cvs checkout project_name导出的project_name目录下进行具体文件的版本同步(添加,修改,删除)操作。


4 更新update将文件同步到最新的版本
cvs update
不制定文件名,cvs将同步所有子目录下的文件,也可以制定某个文件名/目录进行同步
cvs update file_name
最好每天开始工作前或将自己的工作导入到CVS库里前都要做一次同步,并养成“先同步 后修改”的习惯。


5 提交commit(确认修改并注释)
cvs ci -m "write some comments here"


6 有用的关键词
cvs log filename
可以查到谁对此[文件]作过修改


添加文件
-------------------------------
创建好新文件后,比如:touch new_file
cvs add new_file
注意:对于图片,Word文档等非纯文本的项目,需要使用cvs add -kb选项按2进制文件方式导入(k表示扩展选项,b表示binary),否则有可能出现文件被破坏的情况。比如:
cvs add -kb new_file.gif
cvs add -kb readme.doc



删除文件
-------------------------------
将某个源文件物理删除后,比如:rm file_name
cvs rm file_name
然后确认修改并注释
cvs ci -m "write some comments here"
以上面前2步合并的方法为:
cvs rm -f file_name
cvs ci -m "why delete file"
注意:很多cvs命令都有缩写形式:commit=>ci; update=>up; checkout=>co/get; remove=>rm;




查看修改历史
-------------------------------
cvs log file_name
cvs history file_name

查看当前文件(可能已经修改了)和库中相应文件的区别
cvs diff file_name



正确的通过CVS恢复旧版本的方法
-------------------------------
如果用cvs update -r1.2 file.name
这个命令是给file.name加一个STICK TAG: "1.2" ,虽然你的本意只是想将它恢复到1.2版本
正确的恢复版本的方法是:cvs update -p -r1.2 file_name >file_name
如果不小心已经加成STICK TAG的话:用cvs update -A 解决




以下命令可以允许你修改某个文件某个版本的注释
-------------------------------
cvs admin -m 1.3:"write some comments here" file_name




移动文件/文件重命名
-------------------------------
cvs里没有cvs move或cvs rename,因为这两个操作是可以由先cvs remove old_file_name,然后cvs add new_file_name实现的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值