2016-06-01 29 views
0

假设我已经检出了文件夹BuildI12内的一个文件夹,并且我想用蚂蚁更新它,我该怎么做。
我不知道如何在ant中创建自定义任务。使用ant脚本更新SVN文件夹

+0

你能更好地解释你的意思为“更新文件夹”?你的意思是运行svn更新? – ivoruJavaBoy

+0

是的,我检出了该文件夹,然后想更新它。 – viveksinghggits

+0

我的解决方案使用svnkit作为颠覆客户端:http://stackoverflow.com/questions/16305315/the-svn-client-svnkit-is-not-available/16310312#16310312 –

回答

0

如果我理解你的需求,你的意思是运行从一个自定义Ant任务SVN更新,你可以做这样的事情:

<target name="svn_command" description = "run svn update command"> 
     <if> <os family="windows"/> 
      <then> 
       <exec dir="." executable="cmd.exe" outputproperty="svnlog.out" failonerror="true" > 
        <arg line="/c svn update"/> 
       </exec> 
      </then> 
      <else> 
       <exec executable="svn" outputproperty="svnlog.out"> 
        <arg line=" update"/> 
       </exec> 
      </else> 
     </if> 
</target> 

很明显,你可以做更多的伎俩,利用占位符和创建动态任务可以工作于不同的SVN操作方法。

让我知道这是否符合您的需要..

+0

只是一个说明:使用''需要第三方Ant-Contrib库。为避免Ant-Contrib,“”任务具有“osfamily”属性,确保“”只能在某些操作系统上运行。 –

+0

我不明白它会如何工作。我的意思是cmd.exe的用途是什么,我将不得不编写它。 – viveksinghggits

+0

这个自定义目标适用于windows和unix ...它说,如果系统是一个Windows系统,使用cmd.exe调用svn进程并运行更新命令,如果出现问题会失败并登录到svnlog.out输出,如果不是一个Windows系统,只需要调用可执行进程svn param更新,你的意思是我必须写它?您的系统是Unix还是Windows? – ivoruJavaBoy