来自CruiseControl.net的Zip svn存储库

时间:2009-09-02 15:50:28

标签: cruisecontrol.net

作为我在CruiseControl.net服务器上构建过程的一部分,我想备份我的svn存储库并将其上传到远程服务器。

我想我可以在发布商部分使用Package任务。我创建了以下任务:

  <package>
      <name>c:\...\svn.zip</name>
      <compression>9</compression>
      <always>true</always>
      <baseDirectory>C:\...\svn_repository_dir</baseDirectory>
      <files>
        <file>\*.*</file>
      </files>
  </package>

它使用存储库目录中的文件创建zip文件,但不会递归处理目录。

这可能吗?

2 个答案:

答案 0 :(得分:0)

相应的zip开关是-r(用于递归),有用的是-x(用于排除隐藏的SVN数据文件)

zip dest.zip -r path/* -x *.svn*

至于Cruise Control,将这些开关放入<file>标签是否有效?

E.g。

<file>-r</file>
<file>\*.*</file>
<file>-x *.svn*</file>

答案 1 :(得分:0)

关于此的文档非常稀疏,并没有真正指定是否可以使用通配符。我想你可以得到源代码,看看这个任务的作用。您可能尝试的一件事是假设该元素将与cc.net的其他部分相同的通配符执行并使用:

<file>**/*</file>

值得一试。