复制时忽略外部

时间:2014-03-14 23:25:08

标签: svn

当我从源码复制到目的地时,我想忽略外部。我试过了

svn cp --ignore-externals sourcepath destpath

但外部仍然存在。知道我怎么能做这个工作吗?

我的源结构如下:

trunk
   dir1 with sub dir ( need all of this)
   dir2 with sub dir ( each sub dir has a file with svn external prop set)
   dir3 with sub dir ( need all of this)

我应该能够通过一个cp命令获得我想要的所有东西,除了我的分支中的外部。

感谢。

3 个答案:

答案 0 :(得分:2)

你做不到。

svn:externals是文件或目录本身 的属性。它与文件中的任何实际文本一样,都是文件的一部分。想要复制没有属性的目录就像想要复制文件而没有该文件中的所有文本。它无法完成。

此外,--ignore-externals标志不会删除svn:externals属性,它只会阻止Subversion在您执行svn cosvn update时对该属性执行操作。

如果是任何安慰,您可以使用-R标志递归删除属性:

$ svn propdel -R svn:externals destdir

顺便问一下,您是在工作副本目录上还是在URL上执行此操作?

答案 1 :(得分:1)

可能没有一个命令。可能需要在svn:externals之后移除svn propdel属性。另一种方法是复制文件夹中的所有文件,而不是复制文件夹。

答案 2 :(得分:0)

svn export --ignore-externals应该这样做。