在Windows环境使用bat批处理来实现自动处理从SVN代码库里update各个项目代码。

@echo off
@echo ******************************************************
@echo =============== 批量自动更新SVN版本库 ===============
@echo %date% %time% 准备更新SVN版本库
@echo ****************************************************** ::代码编写思路
::获取bat当前的运行目录 %dp0
::遍历当前目录,查找包含.svn子文件夹的文件夹
::生成命令并调用执行 ::部分参数说明
::svn_home 安装TortoiseSVN的目录
::work_dir 需要更新的SVN目录路径,路径之间用空格隔开
::/closeonend:0 不自动关闭窗口
::/closeonend:1 在没有错误的情况下关闭窗口
::/closeonend:2 在没有错误和冲突的情况下关闭窗口
::/closeonend:3 在没有错误、冲突、合并情况下关闭窗口
::dir /ad-s/b 表示只取目录,并且不是系统文件夹,使用空格模式显示 :: 设置本地为延迟扩展。其实也就是:延迟变量,全称延迟环境变量扩展。
setlocal enabledelayedexpansion :: 设置svn默认安装位置以及需要调用的应用程序
set svn_home=D:\Program Files\TortoiseSVN\bin
set exe_name=TortoiseProc.exe
set work_dir=D:\project\svn :: 进入包含多个svn项目的目录
D:
cd %work_dir% @echo =============== 数据处理中 =============== :: 使用for循环从 dir 获取到字符串中获取文件夹名字
for /f "delims=" %%i in ('"dir /ad-s/b "') do (
:: 判断是否是svn文件夹
if exist "%~dp0%%i\.svn\" (
@echo 正在更新项目 %%i
:: 调用更新命令
"%svn_home%\%exe_name%" /command:update /path:%%i /notempfile /closeonend:2
) else (
@echo %%i 不存在svn信息
)
) @echo =============== 更新完成 =============== @pause

批量自动更新SVN版本库 - Windows的更多相关文章

  1. CentOS 7 环境下部署 SVN 并实现自动更新(版本库放在Tomcat下)

    1.安装 SVN 1.1先检查是否有安装 svn rpm -qa subversion #没有什么显示就说明没有安装过yum remove subversion #如果有安装就运行删除老版本yum i ...

  2. 在windows上自动备份SVN版本库及定时删除

    下面的脚本是在windows SVN的备份策略,采用的是hotcopy的方法 方案一: 1.先创建一个fullBackup的脚本:fullBackup.bat echo off rem Subvers ...

  3. svn版本库更新后自动同步到www

    注意:www目录一定要用SVN服务器 checkout出Repositories的代码 步骤: (1)新建www根目录 mkdir -p /data/www/lehuo (2)在www根目录下检出(c ...

  4. 自动化工作之自动更新SVN

    任务计划程序 任务计划程序是Window自带的组件 微软文档 http://windows.microsoft.com/zh-cn/windows-vista/automate-tasks-with- ...

  5. 用svnsync 同步备份 svn 版本库 从一台服务器到另一台服务器

    如用svnsync 同步备份两台机器的svn .(就以linux服务器到windows服务器为例子) 要同步的项目名称:source_svn svn 版本库1 .4 以上 源目录:           ...

  6. linux上svn版本库创建小记

    [新建svn仓库] 先创建一个文件夹mkdir /opt/svn/wechat;   然后创建svn版本库    svnadmin create /opt/svn/wechat;   [创建用户组权限 ...

  7. Linux 搭建svn版本库

    一.安装svn服务器端yum install subversion      从镜像下载安装svn服务器端 如果后面执行“svnadmin create /usr/local/svn/sunny”提示 ...

  8. 分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目

    分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目 这几天着实忙的焦头烂额,可惜不是搞技术,今天周日,难得闲下来,写篇大家都想学习的Git教程,其实廖雪峰老师的网站已经 ...

  9. SVN版本库备份和恢复

    1.版本库备份 1.1.svnadmin dump方式备份 此方法借助的是Subversion官网推荐的svnadmin dump备份方式,它的优点是比较灵活,既可以进行全量备份又可以进行增量备份,并 ...

随机推荐

  1. System.Data.SqlClient.SqlException (0x80131904): EXECUTE 后的事务计数指示 BEGIN 和 COMMIT 语句的数目不匹配。上一计数 = 1,当前计数 = 0。 EXECUTE 后的事务计数指示 BEGIN 和 COMMIT 语句的数目不匹配。上一计数 = 1,当前计数 = 0。

    EF使用ExecuteSqlCommand(db.Database.ExecuteSqlCommand("exec proc_DeleteCaseInfo_Output @caseID&qu ...

  2. C#中 Equals和= =的区别

    C#中 Equals和= =的区别 前言:最近感觉技术进步实在是太慢,一直被游戏缠身不能自拔哈哈,但是游戏打多了真的是感觉整个人浮躁的不行,所以我现在要去游戏多写代码多看书,今天在博客园中看到一个前辈 ...

  3. IOS的UIPickerView 和UIDatePicker

    1.UIPickerView的常见属性 //数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id<UIPikerViewData ...

  4. 最简单的代码,CURL获取页面

    function getHTML($url){ $ch = curl_init(); //1.初始化curl curl_setopt($ch,CURLOPT_URL, $url); //2.curl配 ...

  5. Netflix Hystrix - 快速入门

    Hystrix最初是由Netflix的API team研发的,用于提高API的弹性和性能,2012年在公司内部广受好评. 如果你的应用是一个单独的应用,那几乎不用在意断路的问题. 但在分布式环境中,各 ...

  6. winXP/win7/win10系统关闭445端口方法全攻略

    近日有多个高校发布了关于连接校园网的电脑大面积中勒索病毒的消息,这种病毒致使许多高校毕业生的毕业论文(设计)被锁.受害机器的磁盘文件会被篡改为相应的后缀,图片.文档.视频.压缩包等各类资料都无法正常打 ...

  7. SQL SERVER大话存储结构(3)_数据行的行结构

            一行数据是如何来存储的呢?     变长列与定长列,NULL与NOT NULL,实际是如何整理存放到 8k的数据页上呢?     对表格进行增减列,修改长度,添加默认值等DDL SQL ...

  8. Oracle 只导出某个用户下的表及数据

    今天某大牛问我要之前我参与的一个系统的代码及库,我捣鼓下,发给了他. 他很诧异的问:这个库有这么大么 我说 因为当时是专门新建了一个实例,用户也是系统用户,所以导出的时候是导出的整个数据库 他 ZZ ...

  9. VHDL乘除法及转换

    首先鄙视一下这个不智能的语言 1.要进行乘法与除法,数据类型必须是signed 2.两个16位的数相乘,结果必须是32位的 3.乘以2的n次幂的数可以直接乘,之后截位也比较方便,(其实直接移位就可以) ...

  10. TCP协议随笔

    传输控制协议TCP是面向连接.保证高可靠性(数据无丢失.数据无失序.数据无错误.数据无重复到达)传输层协议.TCP/IP结构对应OSITCP/IP                           ...