ant和antsvn构建svn自动化打包部署脚本

前提

平台:windows7(理论上linux下也是成立的)
ant版本:apache-ant-1.9.6-bin.zip
antsvn版本:svnant-1.3.1.zip
svn命令行工具:Setup-Subversion-1.8.9-1.msi

ant基础

http://www.blogjava.net/amigoxie/archive/2007/11/09/159413.html
http://blog.sina.com.cn/s/blog_5920510a01018bvt.html
http://hzl7652.iteye.com/blog/1188967

问题

在使用antsvn操作svn的时候有三种方式:
1.命令行方式
2.svnkit方式
3.javahl方式

第一种方式在本次没使用,主要是实验了2、3种方式,svnkit是javahl的高级版,实现了java的客户端。
但是我自己在使用的时候如何svn协议是https协议的话,执行svn命令是会出现问题,所以后来通过实践改为javahl方式就可以使用,如果协议是http或者是svn协议的话svnkit是没有问题的。

antsvn编写

<?xml version="1.0"?>
<project name="test_ant_svn" basedir="." default="checkout">
    <!-- svn user name pwd -->
    <property name="svn_user_name" value=""/>
    <property name="svn_user_pwd" value=""/>
    <!-- ant lib -->
    <property name="ant_lib" value="G:\ant\lib"/>
    <!-- svn 路径 -->
    <property name="svn_path" value="https://"/>

    <path id="path.svnant">
          <pathelement location="${ant_lib}/svnant.jar"/>
          <pathelement location="${ant_lib}/svnClientAdapter.jar"/>
          <pathelement location="${ant_lib}/svnjavahl.jar"/>

          <!-- ... -->
    </path>

    <!-- 引用svn task文件,使用svn任务可以使用-->  
    <typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="path.svnant"/>

    <!-- 设置svn相关属性 -->  
    <svnSetting id="svn.setting" svnkit="false" javahl="false" username="${svn_user_name}" password="${svn_user_pwd}"/>
    <!-- 检出代码 这里使用 export 不是checkout 二者区别 checkout会svn相关信息文件检出,export只是检出最新的文件-->
    <target name="checkout">  
        <echo message="hello ant!"></echo>
        <svn refid="svn.setting">  
            <export srcUrl="${svn_path}" destPath="." force="true"/>  
        </svn>  
        <echo message="success!"></echo>
    </target>
</project>

结果截图

这里写图片描述
这里写图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值