【问题标题】:Creating a branch from a partial tree of trunk in SVN从 SVN 中的部分主干树创建分支
【发布时间】:2012-08-02 14:50:17
【问题描述】:

我想使用我们现有的(和专有的)主干(很大)来介绍分支/合并。这是一个例子:

trunk
    folderA
        folderA1
            folderA1a
        folderA2
    folderB
    folderC
    ...
    folderZ
        folderZ1
            folderZ1a
    libraries

branches

目标是将这些路径作为分支:

  • 主干/文件夹A/文件夹A1/文件夹A1a
  • 主干/文件夹Z/文件夹Z1/文件夹Z1a
  • 主干/库

到目前为止,我已经完成了以下工作:

  1. 我使用部门“直系子女,包括文件夹”检查了主干。这只会显示分支、标签和树干
  2. 我将文件夹 A1a、文件夹 Z1a 和库树从主干更新到我的工作副本。现在我的工作副本中有这 3 棵完整的树
  3. 从我的工作副本中,我运行了以下命令:svn copy trunk branches/mynewbranch
  4. 我提交了我的更改

但是,当我浏览存储库时,mynewbranch 包含主干结构的镜像副本,而不仅仅是我更新的几棵树。甚至可以从部分树干中创建一个分支吗?

编辑#1

我进入主干文件夹并运行以下命令:

svn copy . <path_of_branch>

如果我查看我的工作副本,分支只包含我需要的内容。哪个好。

但是,当我提交这些更改时,我最初排除的所有文件夹都会在浏览存储库时出现。当我检查有问题的分支时,不需要的文件夹也存在。

【问题讨论】:

    标签: svn tortoisesvn


    【解决方案1】:

    在第 3 步试试这个...

    svn copy . <path_of_branch>
    

    这里的. 表示您的working copy 将被创建为branch,我相信您正在尝试这样做。

    【讨论】:

    • 感谢您的帮助。你的建议部分奏效。请参阅编辑#1。谢谢!
    【解决方案2】:

    由于问题被标记为 tortoisesvn,我假设 TortoiseSvn 可用。

    您可能会发现使用Repository Browser 执行此类操作更容易。

    可能值得记住的是,branch trunk 被认为是最佳实践,而不是主干的子文件夹。 This question 有更多细节。请注意,在存储库中,由于 subversion 调用 cheap copying,分支整个主干不会导致显着的磁盘使用损失。此外,如果本地磁盘存储或网络带宽存在问题,您当然可以只从分支中签出所需的子文件夹。

    【讨论】:

      【解决方案3】:

      您必须复制您希望在branch 中拥有的trunk 的每个元素。

      svn copy directori/file1 url:/svn/directori/file1
      svn copy ......
      

      或从 url 到 url

      svn copy url:/svn/test/trunk/file1 url:/svn/test/branches/branch01/file1
      

      ....

      【讨论】:

        猜你喜欢
        • 2011-01-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-28
        • 2016-11-23
        • 2013-01-17
        • 1970-01-01
        相关资源
        最近更新 更多