上篇文章[8]使用的是Ant进行按键发布,比较复杂而且必须安装Ant。这里从新写一个bat版本的程序来实现和上文类似的按键发布功能。
这个bat文件是:
@echo off
REM 这是清理之前的CMD留下的痕迹
Cls
REM 版本号为传入的参数,调用方法为rb2 1_1,则version变量为1_1
set version=%1
set name=userview
REM 取得当前日期信息
set year=%date:~0,4%
set month=%date:~5,2%
set day=%date:~8,2%
set filename=%name%_%version%_%year%%month%%day%.rar
echo -----------------------------------------
echo release branches
echo name:%name%
echo version:%version%
echo -----------------------------------------
echo 1.check trunk
svn checkout svn://192.168.195.54/%name%/trunk %name%_trunk
java -classpath %name%_trunk\build\prod;vendor\lib\sqljdbc4.jar;userview.view
echo 2.create branches
svn copy -m '' svn://192.168.195.54/%name%/trunksvn://192.168.195.54/%name%/branches/RB_%version%
echo 3.chekcout branches
svn co svn://192.168.195.54/%name%/branches/RB_%version%%name%_RB_%version%
echo 4.check branches
java -classpath %name%_RB_%version%\build\prod;vendor\lib\sqljdbc4.jar;userview.view
REM 使用rar命令行来生成rar文件。这里需要把rar的地址加入到系统的path变量里。
echo 5.make the rar file
rar a %filename% %name%_RB_%version%/build%name%_RB_%version%/vendor %name%_RB_%version%/index.bat
REM 使用unrar解压生成的文件来测试是否正确。
echo 6.test rar file
rd /s /q %name%_RB_%version%
unrar x %filename%
java -classpath%name%_RB_%version%\build\prod;vendor\lib\sqljdbc4.jar; userview.view
echo 7.mark release tags
svn copy -m '' svn://192.168.195.54/%name%/branches/RB_%version%svn://192.168.195.54/%name%/tags/REL_%version%
echo 8.send to QA
move %filename% ../%filename%
REM 删除中间过程产生的文件
echo 9.clean
rd /s /q %name%_RB_%version%
rd /s /q %name%_trunk
@echo off
参考
4. Ant的主要任务的语法
5. Ant脚本的详细配置
6. Subversion综述