2009-05-18 38 views
1

我有一个目录来自我检查出来的干线部分,与我的兴趣无关。我如何使用Tortoise SVN从我的系统中删除此文件夹,并停止SVN试图给我更新,而不是从存储库中删除它?使用SVN删除不相关的目录

+0

这是有点老了,但1.6引入了 'exlude' http://stackoverflow.com/questions/588024/how-to-ignore-specific-subversion-subdirectories-during-commit – Glenn 2011-09-28 16:09:10

回答

4

我没有用它自己还,但看看稀疏目录:

http://svnbook.red-bean.com/en/1.5/svn.advanced.sparsedirs.html

颠覆1.5引入了一种称为稀疏目录(或浅检出)功能,可以让您轻松检出一个工作副本或一个工作副本的一部分 - 比完整递归更浅,可以在以后自由引入先前忽略的文件和子目录。

...

你可能会在这一点上是疑惑,“那又怎么样? “什么时候使用这个功能?”这个功能发现实用程序的一种场景与特定的存储库布局绑定在一起,特别是在单个存储库位置中存在多个相关或相关项目或软件模块的情况下(trunk/project1,trunk/project2 ,trunk/project3等)。 在这种情况下,可能会出现这样的情况:您个人只关注少数这些项目 - 可能是一些主要项目和其他依赖的其他模块。您可以查看所有这些东西的单个工作副本,但这些工作副本是不相交的,因此,同时在多个或所有副本上执行操作可能会很麻烦。另一种方法是使用稀疏目录功能,构建一个仅包含您关心的模块的单个工作副本。您将从项目公共父目录的空洞深入检查开始,然后以无限深度更新您希望拥有的项目,就像我们在前面的示例中演示的那样。把它看作是工作拷贝公民的选择加入系统。

0

据我所知,检查时不可能选择性地忽略条目。当你检出一个SVN URL时,你会得到它下面的一切。

所以,如果你的项目有以下结构:

\trunk\Dir1 
\trunk\Dir2 
\trunk\Dir3 

你可以得到所有主干\,或单独检查各方向1,方向2或DIR3自己的工作目录。尝试检出中继但不包括Dir2例如不支持。

0

如果您检查了后备箱,就会得到一切。如果它的回购,根据项目/兴趣组织它。如果你无法弄清楚它在一年中的情况,那么支持它并对它进行版本控制有什么意义呢?

0

你这里有几个选项:

  1. 只要删除该文件夹,从不更新的根,只有删除的文件夹附近的子目录。

  2. 设置svn:忽略根目录上的属性以忽略不需要的文件夹,并且永不提交根目录。

  3. 您可以设置tortoiseSvn来签出根目录下的特定级别。如果你的问题是在不需要的目录中有大文件,那么你可以只对儿童(一级)进行签出,然后在除了不需要的目录之外的所有目录上使用切换命令来检出它们下面的所有级别,从而节省不必要的空间DIR。你仍然会看到一个空的不需要的目录。