首页 最新文章网站服务器Shell正文

svn merge命令合包脚本(按日期)

rem 功能 :自动指定日期以后的所有版本merge到主干
rem 入参 :1服务名;2分支名;3注释内容;4日期

@echo off
rem =========进入待merge的本地workspace=========
if (%4 == "") echo 日期为空

cd D:workspace235%1
echo Goto local path......

rem =========更新本地workspace=========
svn update
echo Update local workspace...


rem =========获取分支的更新履历,并写入本地文件=========
svn log -q -r {%4}:HEAD  --stop-on-copy https://kxbdatdbpc:8443/svn/WJ-SVN/03_Resource/%1/branches/%2 > D:svn_merge\%1.log
echo Get the branch's history......
type D:svn_merge\%1.log

rem =========模拟merge确定有没有冲突=========

echo svn merge start......
svn merge https://kxbdatdbpc:8443/svn/WJ-SVN/03_Resource/%1/branches/%2 -r {%4}:HEAD D:workspace235%1 --dry-run

rem =========如果有冲突文件按N退出,若没有按Y继续=========
set /p Askme=continue(Y) or exit(N)?
if /i "%Askme%"=="y" goto next
if /i "%Askme%"=="n" goto end


rem =========执行merge=========
:next
rem =========格式化当前时间=========
set CURRENT_DATE_TIME=%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%:%time:~3,2%:%time:~6,2% 

echo svn merge https://kxbdatdbpc:8443/svn/WJ-SVN/03_Resource/%1/branches/%2 -r {%4}:HEAD D:workspace235%1
svn merge https://kxbdatdbpc:8443/svn/WJ-SVN/03_Resource/%1/branches/%2 -r {%4}:HEAD D:workspace235%1

rem =========写入merge日志文件=========
echo %CURRENT_DATE_TIME%====/%1/branches/%2 -r {%4}:HEAD D:workspace235%1 >> D:svn_mergeSVN_Merge.log


rem =========提交文件=========
svn commit -m %3
echo %3
echo %CURRENT_DATE_TIME%====%3 >> D:svn_mergeSVN_Merge.log


rem =========处理结束并返回脚本所在目录=========
:end
cd D:svn_merge


评论

精彩评论
觉得有用就打赏吧
关注本站公众号,享受更多服务!
联系方式
QQ:2727987445
地址:中国·辽宁
Email:2727987445#qq.com
Copyright2015-2024.Powered by ©️云水客 | 网站地图 | 辽ICP备14000512号-5