使用TortoiseSVN同步文件夹

时间:2012-02-06 20:45:50

标签: svn version-control tortoisesvn

我在使用带有工作文件夹和.SVN文件夹的TortoiseSVN / SVN时遇到了一些问题。

假设我有如下结构:

trunk/
     src/
     sdk/
     lib/

如果我想查看src文件夹和sdk文件夹而不是lib文件夹,我分别在两个文件夹上签出,.SVN文件夹将在src /和sdk /下。

那么,如何将/ trunk /文件夹本身置于源代码管理之下?如果我进行结账,那么它将检查包括lib文件夹在内的所有内容,除非我限制深度,在这种情况下它不会知道任何子文件夹。

我真正需要的是一些同步文件夹的方式。

有什么建议吗?

谢谢!

4 个答案:

答案 0 :(得分:6)

  1. 使用TortoiseSVN签出父目录
  2. 选择“完全递归”深度
  3. 点击“选择项目”并取消选择您不想签出的文件夹
  4. 单击“确定”。
  5. 如果您已经签出了父目录,并且想要更改已签出的文件夹子集,请右键单击您的父文件夹,然后选择“TortoiseSVN | Update to Revision ...”。在此窗口中,您可以选择“选择项目”,然后取消选择工作副本中不需要的文件夹。

答案 1 :(得分:1)

我自己没有使用过该功能,但是Subversion支持“稀疏目录”。

  

在我们的示例中,我们仅在工作副本的根目录上运行,更改其环境深度值。但是我们也可以独立地改变工作副本中任何子目录的环境深度值。 小心使用这种能力使我们只能充实工作副本树的某些部分,而其他部分完全不存在(因此该功能名称的“稀疏”位)。这是一个示例,说明我们如何构建我们家族树的一个分支的一部分,在另一个分支上启用完全递归,并保持其他部分被修剪(不在磁盘中)。

您可以在Spare Directories

的svnbook条目中阅读更多内容

答案 2 :(得分:1)

我知道使用Tortoise的最简单方法是创建一个同名的空白目录,然后右键单击它并从tortoise svn list item中选择“Unversion并添加到忽略列表”这将使任何后续更新忽略这个文件夹。我经常使用已编译的代码执行此操作...最简单的方法是将其全部删除,然后将您不想要的文件夹添加到忽略列表中,然后将它们输出。

答案 3 :(得分:0)