使用ant将文件添加到svn

时间:2012-05-26 03:35:30

标签: svn ant

当我从CVS迁移到SVN时,我正在尝试使用ant在svn中添加文件。

我的 build.properties

svn.root=http://svn/projects2

svn.rsh=/usr/bin/ssh

我的.xml脚本:

<svn>
            <add 
                path="${relative.metadata}/Build_@{product}_@{major}.@{minor.next}"
                cvsRoot="${svn.root}" 
                cvsRsh="${svn.rsh}" />

            <add 
                path="${relative.metadata}/Build_@{product}_@{major}.@{minor.next}/master-@{product}_@{major}.@{minor.next}.sql"
                cvsRoot="${svn.root}" 
                cvsRsh="${svn.rsh}" />

            <add 
                path="-q commit -m 'Adding the next build directory' ${relative.metadata}/Build_@{product}_@{major}.@{minor.next}"
                cvsRoot="${svn.root}"
                cvsRsh="${svn.rsh}" />

        </svn>

正如你所看到的那样,将CVS与SVN混合使用,所以我确信我做错了。我只是想使用这种类型的脚本将文件提交到SVN。我让它变得比实际更复杂吗?

好的......我做了一些研究,这是我到目前为止所做的......

我的build.properties包含此

svn.repo.url = HTTP://svn.project.com/projects

我的.xml现在就是这个

<property name="svn.repository.url" value="${svn.repo.url}"/>

<svn>
      <add
          dir="${relative.metadata}/Build_@{product}_@{major}.@{minor.next}"/>

</svn>

所以现在我的问题是,这项行动失败的原因是什么?

2 个答案:

答案 0 :(得分:0)

查看tigris.org提供的SVNAnt task,尤其是子命令svn add

所以你应该能够做到这样的事情:

<svn>
  <add file="${relative.metadata}/Build_@{product}_@{major}.@{minor.next}"/>
</svn>

答案 1 :(得分:-1)

使用SVN Add,然后将要添加的目录提供给SVN。