如何提取将主干从SVN存储库扩展到具有历史记录的新存储库的分支

如何提取将主干从SVN存储库扩展到具有历史记录的新存储库的分支,svn,branch,svnsync,svndumpfilter,svndump,Svn,Branch,Svnsync,Svndumpfilter,Svndump,我在谷歌上搜索了很多问题,但没有找到我需要的 我有一个类似这样的存储库 /Project_A +- trunk +- branches +- Version_1 +- Version_2 +- 1st_Custom_version_for_customer_A +- 2nd_Custom_version_for_customer_A /Project_B +- trunk +- branches +- Version_1

我在谷歌上搜索了很多问题,但没有找到我需要的

我有一个类似这样的存储库

/Project_A
  +- trunk
  +- branches
      +- Version_1
      +- Version_2
      +- 1st_Custom_version_for_customer_A
      +- 2nd_Custom_version_for_customer_A
/Project_B
  +- trunk
  +- branches
      +- Version_1
      +- Version_2
      +- 1st_Custom_version_for_customer_A
      +- 2nd_Custom_version_for_customer_A
树枝是树干的后代。例如,项目A

Trunk ------------------------------------------------------>
Version_1   \--------->                    \
Version_2                  \--------->      \
1st_Custom_version_for_customer_A            \--------------->
自定义版本现在有了自己的生命周期,不再从主干获取任何更新(许多差异)

我只需要在新的存储库中提取与客户相关的修订。即:/Project\u A/trunk,直到为客户创建第一个自定义版本。然后是针对客户A的/Project\u A/Branchs/1st\u Custom\u version\u和针对客户A的/Project\u A/Branchs/2nd\u Custom\u version\u。然后是针对项目B的相同版本。都在同一存储库中

我尝试过svnsync,但只能为客户提取/Project\u A/branchs/second\u Custom\u version\u,即使历史记录良好,我仍然可以看到其他分支的所有提交消息(这在我的例子中是个问题)

至于svndumpfilter,如果我从一开始就将所有内容都放在“/Customer_A”下(下次我将采用这种方式),那么如果分支是另一个分支的副本,则有时会被重命名、删除、重新创建等。。。我看它不能正常工作

有没有什么工具或东西可以帮我完成这里的工作


谢谢

基于路径的授权功能(在服务器端)在这里应该有帮助--您是否尝试过为
svnsync
设置一个受限帐户?

基于路径的授权功能(在服务器端)在这里应该有帮助,我想--您是否尝试过为
svnsync
设置一个受限帐户?@sendmoreinfo这是一个非常好的主意,应该会奏效。我问这个问题已经很久了,这个“摘录”暂时被推迟了。如果我有空闲时间,我会试试看,让你留下来updated@sendmoreinfo成功了!使用基于路径的授权限制此用户的访问是一件痛苦的事情。更多信息:嗯,我如何将评论转换为答案…@sendmoreinfo我碰巧与Eric Bonnot合作,所以只要将您的评论复制/粘贴到答案中,我就会接受。谢谢是的,这就是方法。谢谢@sendmoreinfo