Ø 问题: 作者:冯××(fengcui@××.cn)
CVS如何根据文件扩展名来识别哪些文件是二进制文件? |
回答:
CVSROOT配置目录下的cvswrappers配置文件定义了一个包装程序,当文件添加或者更新时就会执行相应操作。
cvswrappers 的基本格式为: wildcard [option value][option value]... 其中 option 为下列之一 -m update methodology value: MERGE or COPY -k keyword expansion value: expansion mode |
具体操作方法如下:
1. “-k”指定按照某种方式提交,后面指定提交的方式,如“b”按照二进制方式提交;
以“.doc”结尾为例,在cvswrappers配置文件中添加“*.doc -k 'b'”标记,添加时会自动按照二进制方式提交。
2. “-m”指定当冲突发生时,按照“MERGE”或者“COPY”来更新;默认情况是“MERGE”方式。
例如,如果在cvswrappers配置文件中添加“*.txt -m 'COPY'”标记,当提交冲突时,正确配置好更新选项中的“Merge Options”,会将服务器上的指定版本拷贝到本地,并产生一个以“#”的文件备份。
3. cvswrappers还包括“-f/-t”选项,用于将指定文件目录作为文件提交或者将文件转换,目前我们服务器暂时不支持此两种选项。
4. 推荐使用“-k 'b'”参数标记二进制文件,避免由于提交格式错误而无法打开文件,举例如下:
*.[Gg][Ii][Ff] -k 'b' *.[Jj][Pp][Gg] -k 'b' *.[Pp][Nn][Gg] -k 'b' |
已在下面配置库中应用,可参考。
:pserver:用户名@scm1.×××.cn:/db3/cebss
:pserver:用户名@scm1.×××.cn:/repository/qihuo
5. 不推荐使用“-m”参数标记,默认方式即可显示冲突位置。