工作中在产品成型阶段每一次测试后涉及修改的源码比较多,而使用CC一个一个去维护去ci,co的话将相当的麻烦,所以自行总结了一套根据源码修改清单利用CC命令批量ci,co,mklabel的步骤。此步骤是针对windows平台,unix平台可类似操作。
1.取得更新的程序文件排序列表(不包括文件夹),命令:dir /a-d /b /s /on >sort_file_list.txt (按字母顺序排列)(可使用管道+find 命令来过滤不需要的文件)
2.取得更新的程序中涉及的文件目录列表,以便打标签时使用,命令: dir /ad /b /s /on >sort_dir_list.txt (按字母顺序排列)
3.根据sort_file_list.txt中的文件清单编写CC的checkout脚本co_file.sh,命令 :
例如:cleartool co -nc ./JavaSource/dms/cas/pub/DMSPrintServlet.java
4.根据sort_file_list.txt中的文件清单编写CC的checkin脚本ci_file.sh(即使文件相同也检入),命令:
例如:cleartool ci -nc -ide ./JavaSource/dms/cas/pub/DMSPrintServlet.java
5.登陆到vob库服务器创建标签,例如UAT_Modified_20100406,命令:
例如: cleartool mklbtype -c "UAT Test Modified file , 20100406" UAT_Modified_20100406
5.根据sort_file_list.txt中的文件清单编写CC的mklabel脚本mk_label_file.sh,命令:
例如:cleartool mklabel -rep UAT_Modified_20100406 ./JavaSource/dms/cas/pub/DMSPrintServlet.java
6.根据sort_file_dir.txt中的目录清单编写CC的mklabel脚本mk_label_dir.sh,命令:
例如:cleartool mklabel -rep UAT_Modified_20100406 ./JavaSource/dms/cas/pub
7.在vob库服务器上建立一个全库视图(或某版本分支视图),比如All_Source;
8.将co_file.sh,ci_file.sh,mk_label_file.sh,mk_label_dir.sh上传到vob库服务器All_Source视图下对应的目录下(根据建立的sh中的路径放入对应的目录);
9.登陆到vob库服务器,运行检出脚本:co_file.sh
10.将修改的程序使用ftp覆盖到vob服务器上;
11.运行检入操作脚本:ci_file.sh
12.运行打标签脚本:mk_label_dir.sh,mk_label_file.sh
13.所有标签完成后,根据标签提取相关文件下来比较;
1.取得更新的程序文件排序列表(不包括文件夹),命令:dir /a-d /b /s /on >sort_file_list.txt (按字母顺序排列)(可使用管道+find 命令来过滤不需要的文件)
2.取得更新的程序中涉及的文件目录列表,以便打标签时使用,命令: dir /ad /b /s /on >sort_dir_list.txt (按字母顺序排列)
3.根据sort_file_list.txt中的文件清单编写CC的checkout脚本co_file.sh,命令 :
例如:cleartool co -nc ./JavaSource/dms/cas/pub/DMSPrintServlet.java
4.根据sort_file_list.txt中的文件清单编写CC的checkin脚本ci_file.sh(即使文件相同也检入),命令:
例如:cleartool ci -nc -ide ./JavaSource/dms/cas/pub/DMSPrintServlet.java
5.登陆到vob库服务器创建标签,例如UAT_Modified_20100406,命令:
例如: cleartool mklbtype -c "UAT Test Modified file , 20100406" UAT_Modified_20100406
5.根据sort_file_list.txt中的文件清单编写CC的mklabel脚本mk_label_file.sh,命令:
例如:cleartool mklabel -rep UAT_Modified_20100406 ./JavaSource/dms/cas/pub/DMSPrintServlet.java
6.根据sort_file_dir.txt中的目录清单编写CC的mklabel脚本mk_label_dir.sh,命令:
例如:cleartool mklabel -rep UAT_Modified_20100406 ./JavaSource/dms/cas/pub
7.在vob库服务器上建立一个全库视图(或某版本分支视图),比如All_Source;
8.将co_file.sh,ci_file.sh,mk_label_file.sh,mk_label_dir.sh上传到vob库服务器All_Source视图下对应的目录下(根据建立的sh中的路径放入对应的目录);
9.登陆到vob库服务器,运行检出脚本:co_file.sh
10.将修改的程序使用ftp覆盖到vob服务器上;
11.运行检入操作脚本:ci_file.sh
12.运行打标签脚本:mk_label_dir.sh,mk_label_file.sh
13.所有标签完成后,根据标签提取相关文件下来比较;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20652124/viewspace-664083/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/20652124/viewspace-664083/