|
1、文件的导入操作(将多目录层级文件或不同类型的文件一次导入到cvs中的操作)
已有目录A,要将目录B及目录B中的所有文件及子文件夹导入到A下操作方法:
将目录B及其下的所有内容放在目录A下(假设当前的项目名称为Project,C为Project下的第一级目录,A为C的第一级子目录)
==>
在CVS客户端界面上,找到目录B,选中目录B,右键点击导入(Import module)选项
==>
系统检测导入文件类型,弹出导入过滤器,将检测出的导入文件类型列出,并列出对文件的导入类型,若发现导入类型不对,选中那一条,点击编辑(Edit)按钮,将导入类型强制转换为需要的类型,确认导入的类型都没有问题后,点击继续(OK)按钮
==>
弹出导入设置的窗口,在设置远程服务器上的模块名和路径(Repository)对应的输入框中填写Project/C/A/B
==>
点击确定按钮,开始导入操作,当信息栏中出现
***** CVS exited normally with code 0 *****
导入完成
==>
打开A目录的资源管理器窗口,删除目录B
==>
更新目录A或者选中存放CVS文件的根目录检出目录B。
2. 怎样区分各类文件导入时文件的导入类型?
一般地,我们把各种源代码文件(java,c,cpp,html,jsp,css,js等等)作为文本文件 ,其他文件包括图形文件,文档(doc,pdm,cdm,vsd,mpp,xml)以及后缀为mdb,gif,cpp,cs,rar等作为二进制文件。
简单的区分方法是用ultraedit打开一下,看的懂的就是文本类型,看不懂的就是二进制。
注意:
若是文本文件尽量不要使用二进制文件类型导入,因为文件类型变为二进制后不能使用文件版本之间的差异比较功能,及冲突合并功能。并且,文本文件的存储方式是每次存储和上一版的不同之处,而二进制的存储方式是每次存储完全的版本,文件大小会成倍数增长,当二进制文件修改次数过多提交的版本过多时,服务器上的该文件会变得很庞大。
若是二进制文件绝对不能使用文本文件导入,因为这样的操作会将数据类型损坏,上传到服务器上的文件数据是错误的,其他人检出了此文件后无法查看编辑。
3. 想用CVS导入了一个空的目录,为什么会报错,没有反应
CVS不允许导入一个空的文件到服务器上,因此导入空目录后会出现“导入终止 - 没有导入的内容。”的提示。
导入或检出文件需注意的问题
1) 导入设置页面,首先要设置远程服务器上的模块名和路径(Repository),若此处没有设置,默认是当前目录名,则导入后将会导入到远程服务器的根目录下
2) 检出文件页面,要选择远程服务器上的模块名和路径(Module name and path on the server)同时也要注意检出到本地文件夹(Local folder to checkout to)的路径,确认两个路径在层
级上没有相重的区域在确定检出。
4. 使用加入选项(Add selected)像服务器提交新建的目录或文件时为什么会报错?
1) 一般报错分为两种情况
2) 报错为:
cvs add: cannot open CVS/Entries for reading: No such file or directory
cvs [add aborted]: no repository
***** CVS exited normally with code 1 *****
出现这样的错误是因为,添加的文件或目录的上一级目录还没有加入到服务器中。首先要将此上一级目录加入到服务器上才可以正确加入。
3) 报错为:
cvs add: in directory .:
cvs [add aborted]: there is no version here; do 'cvs checkout' first
***** CVS exited normally with code 1 *****
出现这样的错误是因为,将目录添加到了服务器仓库中的根目录下了,CVS不允许使用加入选项(Add selected)往服务器仓库中的根目录下新建目录。
5. 在目录A下添加了两个子文件或目录a和b后该怎么提交?
使用加入选项将a,b添加后,需选中a及b然后点击提交选项,而不能选中目录A直接提交,因为在未提交前a和b都还是非CVS文件,提交不会成功。
另外,提交的若为子目录,目录不能为空。
――――待 续――――
|