这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » [原创]软件工程-使用CVSUp备份CVS库

共6条 1/1 1 跳转至

[原创]软件工程-使用CVSUp备份CVS库

菜鸟
2003-12-18 01:50:42     打赏
早就想为CVS做个备份服务器了,要不现在的服务器有个三长两短怎么办。天有不测风云,9月份CVS服务器瘫痪了一次。当时大楼停电,linux最怕停电了。建CVS备份服务器的想法就更强烈了。 也是因为没有空和不知道该怎么做,所以最近才做完这件事。虽然只要一会就可以搞定的,但还是拖到了现在。 前面Amine版主讨论过CVS的东西,现在帖子看不到了,希望能开个软件工程板块,不指望人气有多旺,希望搞嵌入式的同志们也多关注关注软件工程。 CVSUp是专为备份或同步CVS库而开发的一个工具。我用的是RedHat,所以从ftp://ftp.freebsd.org/pub/FreeBSD/development/CVSup/binaries/RedHat-6/下了for RadHat的CVSUp二进制文件。解压就可以用了。有什么不会的可以看www.cvsup.org里的faq。 下面提供傻瓜化的备份整个源码库的方法。如果大家想轻松一点,按下面的步骤做就可以了。 主机A 192.168.1.1 CVS服务器 主机B 192.168.1.2 CVS备份服务器 ********************** [color=#DC143C]先配置CVS服务器(主机A)[/color] 1.在/usr/local/etc/目录下建cvsup目录,这是默认的[I]base[/I]目录路径 cd /usr/local/etc/ mkdir cvsup 2.在cvsup目录下建sup目录,sup目录下存放所有的[I]collection[/I]。 cd cvsup mkdir sup 3.sup目录下的子目录为[I]collection[/I],collection表示你需要备份的文件的集合,collection可以有一个或多个。比如建一个名为cvs的[I]collection[/I] cd sup mkdir proj cd proj 4.在[I]collection[/I]中加入服务器端的配置文件,加入以下两个文件list.cvs releases releases文件内容如下 cvs list=list.cvs prefix=/ list.cvs文件内容如下 upgrade myCvsProject1 upgrade myCvsProject2 请注意这里定义了两个不同路径的CVS库,/myCvsProject1和/myCvsProject1(当然也可以换成其他的路径)。客户端在下载[I]collection[/I] cvs时会将这两个目录的内容都下载下来。 5.写好了配置文件,现在只需要启动守护进程便可以了 ./cvsupd -C 1 -C会在后台运行服务进程。或者就./cvsupd也行。 ********************** [color=#D2691E]配置CVS备份服务器(主机B)[/color] 1.建一个空目录准备收文件 cd / mkdir cvsbak 2.建客户端的配置文件supfile #this is supfile for cvsup #host指定服务器的地址 *default host=192.168.1.1 #指明下载的文件存在哪儿 *default base=. #指明release名称,对应服务器配置文件releases的一开始 *default release=cvs #下面一行是服务器sup目录下可能有的[I]collection[/I]名称(前面我们已经建了这个目录) proj #如果有别的[I]collection[/I],可以再继续添加。 3.用客户端下载 ./cvsup supfile 这时硬盘灯狂闪...... /cvsbak目录下多了三个目录myCvsProject1,myCvsProject2,sup 前面两个目录里的内容与服务器上的一模一样,sup目录放的是下载文件的信息。 ++++++++++++++++++++++++++++++++++++++++++++++++ 这种方法备份了完整的CVS版本库,其实你完全可以只备份CVS中的某一个tag或版本,这样每次都可以使得备份服务器与CVS上的最新代码同步。但我想大多数人可能象我一样,希望能完全保留完整的版本历史记录。 如果希望进一步的了解CVSUp,可以到http://gsp.com/support/man/上去搜索cvsup,cvsupd,里面有详细的用法。 [align=right][color=#000066][此贴子已经被作者于2003-12-17 19:40:30编辑过][/color][/align]



关键词: 原创     软件工程     使用     CVSUp     备份     服务器    

菜鸟
2003-12-18 23:11:00     打赏
2楼
鼓励无数:)

菜鸟
2003-12-19 00:29:00     打赏
3楼
近来我对cvs又做了系统的学习。有了些进步啊,哈哈。 不知amine老大最近有没有深入研究。 现在我遇到一难题不知怎么解决,“如何列出工程中两个标签之间所有改动的文件?”,老大能否接招?

菜鸟
2003-12-19 19:18:00     打赏
4楼
《CVS Nightly Build》 上网可以搜到,不过没有完全的电子版。

菜鸟
2003-12-20 01:55:00     打赏
5楼
试试 cvs -q diff -r tag1 -r tag2

菜鸟
2003-12-20 20:37:00     打赏
6楼
我没有说清楚,两个版本间会改动很多文件的,我只想知道哪些文件被改动了,但并不想知道它们具体被修改了什么。 -q -Q都是过滤不重要信息的选项,现在我是要过滤重要信息。 不知怎么办可以只将文件列出来,不要看改动内容。

共6条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]