使用Phing(或Ant)删除.svn文件

时间:2011-04-25 14:44:11

标签: php ant build phing

如何使用Phing脚本删除.svn文件... 我正在尝试这个目标,但它似乎不起作用。 我的$ {site.dir}变量是“./../../..”

 92         <!-- Cleanup the project directory from any junk files: .svn, .hg etc-->
 93         <target name="cleanup">
 94                     <echo msg="Site dir ${site.dir}"/>
 95             <delete>
 96                 <fileset dir="${site.dir}">     
 97                     <include name="*.svn" />        
 98                     <include name="**/*.svn" />     
 99                     <include name="*.hg" />         
100                     <include name="**/*.hg" />      
101                 </fileset>
102             </delete>
103         </target>   

我做错了什么?

3 个答案:

答案 0 :(得分:0)

好。这个执行官打电话来做这个工作:

<target name="cleanup">
    <echo msg="Site dir ${site.dir}"/>
    <exec command="find ${site.dir} -name .svn -delete" />
    <exec command="find ${site.dir} -name .hg -delete" />
</target>

然而 - 有人可以解释为什么原始脚本不起作用? 谢谢!

答案 1 :(得分:0)

确定。解决。 显然我需要添加尾部斜杠来表示.svn是一个目录。 这有效:

92         <!-- Cleanup the project directory from any junk files: .svn, .hg etc-->
 93         <target name="cleanup">
 94            <!-- <echo msg="Site dir ${site.dir}"/>
 95             <exec command="find ${site.dir} -name .svn -delete" />
 96             <exec command="find ${site.dir} -name .hg -delete" />
 97             -->
 98             <delete includeemptydirs="true">
 99                 <fileset dir="${site.dir}" defaultexcludes="false" casesensitive="false">
100                     <include name="*.svn/" />
101                     <include name="**/*.svn/" />
102                     <include name="*.hg/" />
103                     <include name="**/*.hg/" />
104                 </fileset>
105             </delete>
106 
107         </target>

答案 2 :(得分:0)

就个人而言,我只是使用SvnExport(或等效的)任务制作一个干净的项目版本。