我正在寻找使用SVN ANT创建目录,但仅当目录不存在时才如此(如果指定了一个目录,则使用mkdir
嵌套任务与SVN ANT似乎失败目录已经存在)。确定目录是否已经存在使用SVN ANT
是否有一个isExists标志或类似的东西,我可以在这里使用?或者我可以使用其他东西来检测SVN存储库上的现有目录,然后继续通过ANT脚本创建我的目录?
对此的任何想法将不胜感激。
干杯,
斯图尔特
我正在寻找使用SVN ANT创建目录,但仅当目录不存在时才如此(如果指定了一个目录,则使用mkdir
嵌套任务与SVN ANT似乎失败目录已经存在)。确定目录是否已经存在使用SVN ANT
是否有一个isExists标志或类似的东西,我可以在这里使用?或者我可以使用其他东西来检测SVN存储库上的现有目录,然后继续通过ANT脚本创建我的目录?
对此的任何想法将不胜感激。
干杯,
斯图尔特
的available任务,您可以设置依赖于一个文件或目录是否存在
<available property="desired-dir-exists" file="src/desired_dir"/>
<target name="mkdir" unless="desired-dir-exists">
<svn>
<mkdir path="src/desired_dir"/>
</svn>
</target>
两个选项的属性:
您可以将failonerror
属性设置为false
。这样,如果目录存在,将会打印一条错误消息,但构建不会中止。
<svn failonerror="false">
<mkdir path="..." message="..."/>
</svn>
如果你想避免你可能需要做一些更复杂的,如先进行结帐/更新错误信息,然后检查你的工作副本,看看目录要创建已存在。
好的谢谢你们的反馈,我会试试你的建议。 – sjwb 2010-09-24 09:27:19
你想使用svnExists
condition。这允许你做这样的事情(使用Ant-的contrib)
<if>
<not><svnExists target="..."/></not>
<then>
<svn>
<mkdir url="..." message="Creating a directory" />
</svn>
</then>
</if>
注:使用mkdir
当所有的中介目录必须已经存在。
他指的是SvnAnt任务,而不是“简单的蚂蚁” – Grodriguez 2010-09-23 10:14:43