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实现的。
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实现的。