使用 ANT 和 SVNANT,我想 checkin 一个混合有 svn 控制文件以及新文件和子目录的工作目录。据我对SVN ANT的了解"add" task ,使用下面的“force”标志应该执行类似于 svn add --force *
的操作
基本上,我遇到了 this issue 中描述的相同问题在 CollabNet 网站上。
这是我的 xml 配置:
<target name="add-new-files-to-test-repo" depends="check-out-projects">
<svn username="${svn.test.username}" password="${svn.test.password}" svnkit="true" javahl="false">
<add
force="true" >
<fileset dir="${svn.testdir}"/>
</add>
</svn>
<echo message="Adding new files to SVN"/>
</target>
给出响应:
svn: 'D:\Workspaces\TreXProjects\Build\testdir\New Text Document.txt' is already under version control
最佳答案
在我写完这篇文章后,通过重新阅读我链接的文档,终于得到了这个工作。作为关于使用“force”标志与 <add>
的部分任务指示:
(applies only when dir attribute is set).
所以我的固定代码如下:
<target name="add-new-files-to-test-repo" depends="check-out-projects">
<svn username="${svn.test.username}" password="${svn.test.password}" svnkit="true" javahl="false">
<add force="true" dir="${svn.testdir}" >
</add>
</svn>
<echo message="Adding new files to SVN"/>
</target>
当然,这意味着您不能使用 <fileset>
任务的“包含”属性以略读
对于特定文件,正如我的问题中链接的问题的作者想要做的那样。我的解决方法是从以下位置查看工作目录
SVN,使用过滤器仅将我想要的文件复制到该工作目录中
然后是该目录。
关于xml - SVN ANT "Add"带有 "force"选项的任务给出 "is already under version control"构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11402891/