SVN导出但排除某些文件?

时间:2010-11-09 08:41:08

标签: linux svn

我需要在生产服务器上导出我签入的代码库,但需要排除某些文件被覆盖。

有没有“导出”(或等效)内容的方法(没有创建的.svn文件夹等)并排除某些文件?

我现在所做的是导出所有内容并手动进行更改,但我想将其导出到一个干净的目录,复制必要的文件并将目录名称更改为正确的目录。

2 个答案:

答案 0 :(得分:4)

使用您的更改创建补丁:

svn export . /tmp/exported
cp -pr /tmp/exported /tmp/exported.orig
# do your changes to /tmp/exported
cd /tmp
diff -urNP exported.orig exported > "$HOME"/local-changes.patch

然后,当您进行导出时,首先导出然后应用更改:

svn export . /tmp/exported --force
( cd /tmp/exported; patch -p1 < "$HOME"/local.changes.patch )

这样一来,当您修改的文件发生太大变化以至于您的更改无法完全应用时,您将收到错误消息。如果您只是复制文件,那么,例如,如果将配置选项添加到配置文件中,那么您的系统将会神秘地破解。

答案 1 :(得分:0)

这取决于您使用什么来访问您的SVN命令(命令行svn?Tortoise?Eclipse SVN插件?)

使用Tortoise SVN,要导出:右键单击您的仓库 - &gt; ToirtoiseSVN - &gt;出口。 使用Tigris Eclipse插件,忽略文件:右键单击您的文件 - &gt;团队 - &gt;添加到svn:ignore;导出:右键单击您的主干(或回购) - &gt;团队 - &gt;出口