Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Svn 修复标记版本(subversion)中的错误_Svn_Version Control_Merge_Tortoisesvn_Branching And Merging - Fatal编程技术网

Svn 修复标记版本(subversion)中的错误

Svn 修复标记版本(subversion)中的错误,svn,version-control,merge,tortoisesvn,branching-and-merging,Svn,Version Control,Merge,Tortoisesvn,Branching And Merging,我们使用SVN进行版本控制。主要开发是在主干中完成的,当预期的更改比较复杂时,在适用于每个用户的地方创建分支 不时地,测试版本会被标记,例如to/tags/v0.4 然而,在其他开发过程中,可能会在主干中的某个时候修复严重的bug 现在,我想创建一个tag/tags/v0.41,它与/tags/v0.4相同,但仅使用这个严重错误修复了可能的多个严重错误,但肯定不是来自trunk的所有错误 我如何处理乌龟 我建议这样做: 创建从/tags/v0.4到/tags/v0.41的分支svn副本, 将适用

我们使用SVN进行版本控制。主要开发是在主干中完成的,当预期的更改比较复杂时,在适用于每个用户的地方创建分支

不时地,测试版本会被标记,例如to/tags/v0.4

然而,在其他开发过程中,可能会在主干中的某个时候修复严重的bug

现在,我想创建一个tag/tags/v0.41,它与/tags/v0.4相同,但仅使用这个严重错误修复了可能的多个严重错误,但肯定不是来自trunk的所有错误

我如何处理乌龟

我建议这样做:

创建从/tags/v0.4到/tags/v0.41的分支svn副本, 将适用的更改从trunk合并到/tags/v0.41并提交。 但这到底是个好主意吗


如何将特定主干修订版合并到/tags/v0.41,而不合并其他内容?事实上,这将不再是一个标签,而是一个不太好的分支…

您概述的过程是正确的

需要创建分支,以确保只有特定bug的修复被提交到新的稳定版本到trunk,并且没有额外的和可能破坏的功能被错误地从开发版本移植到trunk

在主干中搜索专门修复您的bug的提交 发现

从中创建修补程序并将其应用于/tags/v0.41工作副本 或者只将所需的主干修订合并到/tags/v0.41中 工作副本


注意:如果有多个提交,或者没有提交只修复了bug而不涉及任何其他内容,那么您必须手动将相关代码行复制到新的标记版本

嗨,谢谢!还有两个问题:1。所以我不需要树枝,还是我需要?I签出/tags/v0.4,应用补丁并签入/tags/v0.41?还是我弄混了什么?2.用补丁而不是任何形式的合并来实现这一点真的正确吗?我在手册中读到,应该避免使用补丁,因为它会中断文件/修订版之间的连接。但这可能与此无关…@divB是的,事实上合并更为正确,如果您有一个或多个修订版只修复了错误,而在其他情况下没有其他修订,则需要手动编辑文件。您将需要签出/tags/v0.4,合并或应用补丁,只查看上面trunk中所需的修订,并从工作副本创建一个新的/tags/v0.4.1分支。分支需要分离您发布的每个版本的代码,因此1如果您将来需要再次检索该版本的代码,您不必搜索日志,2您不必混淆稳定代码和alpha代码。