【问题标题】:Release -> Merge -> Checking发布->合并->检查
【发布时间】:2011-07-29 14:15:06
【问题描述】:

正如标题所说,这是我的版本控制顺序。我正在使用 Tortoise SVN 客户端。存储库是网络共享上的文件。

我有 TrunkBranch 文件夹。
我从Branch 签出并做了很多修改,然后又签回Branch
但是,由于不熟悉与Trunk 合并,我总是直接从Branch 将我好的项目代码发布到生产环境中。
上一次生产版本是 3 个月前。修订为 380。
我的开发版本现在是 400。

上周我不得不修复R380 中的一些错误。所以我检查了R380 并修复了错误并再次发布。
但是,我需要将所有代码添加到开发版本 R400,但我不想浪费我过去 3 个月的工作。
此外,R400 中有一些错误的代码部分我无法签入。谁能告诉我如何正确完成这项工作?

我创建了一个 Bugfix 文件夹并尝试将 R380 检入该文件夹,但 SVN 客户端不允许我使用 SWITCHRELOCATE
它只允许我检查Branch 文件夹。恐怕如果我将修改后的R380 签入到Branch 文件夹,它会清除我的R400 版本。谢谢。

【问题讨论】:

    标签: svn merge version


    【解决方案1】:

    如“Subversion feature branch requires changes from another feature branch”中所述,您只能将精确的修订范围合并回您的分支。
    您可以通过您在trunk 中所做的修改来generate a patch
    如果你需要,你可以先从r380创建一个临时分支,去掉你不想要的bug部分,然后生成补丁,应用到'Branch'。 p>

    svn diff -r448:449 > ~/global.patch
    patch -p0 < ~/global.patch
    

    (尽管问题“How to make svn diff produce file that patch would apply, when svn cp or svn mv was used?”报告了一些不起作用的案例,特别是如果分支之间有属性更改)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-26
      • 1970-01-01
      相关资源
      最近更新 更多