【问题标题】:Create SVN branch from changes in trunk从主干中的更改创建 SVN 分支
【发布时间】:2010-05-18 08:54:48
【问题描述】:

我陷入了一个愚蠢的境地:我对 TRUNK 的工作副本进行了一些更改。由于更改尚未经过测试,我想将所有更改转移到一个分支。根据 Tortoise 的手册,Switch 将丢失我所有的修改。有什么方法可以将我的更改保留在工作副本中并将它们保存在存储库的分支中。

【问题讨论】:

    标签: svn tortoisesvn branch trunk


    【解决方案1】:

    从您的工作副本而不是存储库创建一个分支。这样你就不会失去任何东西

    【讨论】:

    • 你的意思是分支/标签吗?但是如何更改工作副本的默认链接?
    • 之后就可以切换了。您的更改将提交到新分支,并且切换没有问题。你不会失去任何东西
    • 在 TortoiseSVN 中单击分支/标签,然后选择工作副本单选按钮,而不是选择 HEAD 或特定版本。这就是 Midhat 所说的。
    • @Biran 感谢您的解释。是的,这就是我所说的abt
    【解决方案2】:

    如果我对问题的理解正确,您正在处理您从TRUNK 签出的副本,但您尚未提交更改。

    这样的话,这个问题就很容易解决了:

    1. 创建一个分支TRUNK:svn cp <base URL> <new branch URL>
    2. 切换到新分支(上面由<new branch URL>指定)
    3. 现在您的工作副本应该指向<new branch URL>
    4. 提交您的更改

    由于您尚未向 TRUNK 提交任何内容,因此项目的 TRUNK 版本保持不变

    【讨论】:

    • 好清晰的解释! (2) 可以使用示例命令“svn switch
    【解决方案3】:

    不直接。但是您可以打一个补丁,然后切换并丢失您的更改,然后将补丁应用到您的分支。

    右键单击工作副本最顶层的文件夹,选择 Tortoise SVN > 创建补丁。选择要包含的文件(通常是所有更改)并将其保存在某处。

    然后切换。

    然后再次点击工作副本(现在指向分支),然后选择 Tortoise SVN > Apply Patch。您将获得一个菜单,您可以在其中右键单击并选择全部应用。保存更改,您应该一切顺利。

    【讨论】:

    • 谢谢,我试试这个方法。
    • 看来这个答案被否决了(虽然它的得分为 0,但我可以在我的声誉设置中看到它)。谁能告诉我为什么?
    【解决方案4】:

    创建更改补丁,然后将其应用到您喜欢的任何分支或工作副本。

    【讨论】:

    • 这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post
    • 我认为我的回答与问题非常相关。
    猜你喜欢
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多