乌龟SVN合并特定修订版

乌龟SVN合并特定修订版,svn,merge,version-control,tortoisesvn,release,Svn,Merge,Version Control,Tortoisesvn,Release,我开始使用SVN与客户乌龟。 现在我有以下情况: 我的主干在第20版,我的分支来自第10版。 我只想在修订版20中合并一个bug修复。 在修订版20中,我在test1.txt上更改了1个文件 在修订版19中,我还对test1.txt和test2.txt进行了更改。 test1.txt中19的更改使用了test2.txt中的某些更改。 test1.txt中20的更改使用了19中更改的内容 当我刚刚合并修订版20时,我的代码更改会有问题。 那么,如何才能看到是否需要合并更多修订 是否有一种更简单的方

我开始使用SVN与客户乌龟。 现在我有以下情况:

我的主干在第20版,我的分支来自第10版。 我只想在修订版20中合并一个bug修复。 在修订版20中,我在test1.txt上更改了1个文件 在修订版19中,我还对test1.txt和test2.txt进行了更改。 test1.txt中19的更改使用了test2.txt中的某些更改。 test1.txt中20的更改使用了19中更改的内容

当我刚刚合并修订版20时,我的代码更改会有问题。 那么,如何才能看到是否需要合并更多修订

是否有一种更简单的方法,然后对每个单独的文件执行“显示日志”以进行检查

我真的不想在主干和分支之间合并所有修订。 只有一个我需要的特定错误修复

分支和发布策略

现在我们有一个6周的冲刺期,所有开发人员都会在主干上不断地进行bug修复/新功能/清理等。 在6周之后,我们进行了分支拆分,当您将其与以前的分支进行比较时,现在可能会有额外的200个修订

分支完成后,必须进行所有技术和功能测试。 由于引入了新的bug或其他原因,这可能会导致问题被拒绝。在我们向客户发布软件之前,我们需要所有新问题都得到批准。 因此,一些问题将返回给开发人员,他们将在主干中解决它。 在所有被拒绝的问题得到解决后,需要将其合并到分支机构,以便将其发布给我们的客户

现在,您可以说为什么不在分支本身中进行额外的bug修复。我们过去经常这样做,但有时会出现这样的问题:它在分支中被修复,但忘记了合并到主干。因此,在下一个分支中,bug又回来了


此外,所有开发人员都可以连续提交所有内容,而不受任何阻碍,这一点非常重要。这就是为什么所有开发人员都只在主干内工作。

我留下的评论是为了澄清。但要回答如何合并特定修订的原始问题,您需要做的是:

  • 右键单击您的结帐文件夹>TortoiseSVN>合并…
  • 然后您将选择
    合并一系列修订
  • 输入中继的URL并选择显示以下内容的选项
    特定范围
    。然后,在对话框中输入逗号 要合并的单独修订列表。(即
    19,20
    )或使用“显示日志”功能并单击要合并的修订号
  • 单击下一步合并
  • 然后将合并您要查找的修订



    如果你在我的评论中添加一些澄清,我可以为你扩展我的答案。

    我留下的评论是为了澄清。但要回答如何合并特定修订的原始问题,您需要做的是:

  • 右键单击您的结帐文件夹>TortoiseSVN>合并…
  • 然后您将选择
    合并一系列修订
  • 输入中继的URL并选择显示以下内容的选项
    特定范围
    。然后,在对话框中输入逗号 要合并的单独修订列表。(即
    19,20
    )或使用“显示日志”功能并单击要合并的修订号
  • 单击下一步合并
  • 然后将合并您要查找的修订



    如果你在我的评论中添加一些澄清,我可以为你扩展我的答案。

    好的,主干的分支位于修订版10,主干向前移动,位于修订版20,对吗?您声明主干版本20中的更改使用更改19中的更改。你为什么不想让所有的改变都让自己跟上时代?分支的想法首先是处理特定的特性/bug/etc,然后将其合并回主干中;所以,理想情况下,你应该让自己跟上时代。如果您需要合并更多修订,您怎么看是什么意思?老实说,这确实是一个逐案的基础。另外,你可以在整个签出文件夹上做一个显示日志,而不仅仅是单个文件。好的,主干的分支位于修订版10,主干已经向前移动,在修订版20,对吗?您声明主干版本20中的更改使用更改19中的更改。你为什么不想让所有的改变都让自己跟上时代?分支的想法首先是处理特定的特性/bug/etc,然后将其合并回主干中;所以,理想情况下,你应该让自己跟上时代。如果您需要合并更多修订,您怎么看是什么意思?老实说,这实际上是一个个案基础。此外,您可以在整个签出文件夹上显示日志,而不仅仅是单个文件。问题是有多个用户正在提交,并且一个文件可能有来自不同用户的多个修订。当我们决定合并一个bug修复时,我们不知道它是否使用了自提交以来的任何其他更改。所以在我的例子中,我们想要合并20个,但它也需要19个。但是SVN不知道这一点。您(对于将来的合并)的解决方案可能是获得良好的实践,首先执行与一个bug修复相关的“原子”提交,然后在日志消息中指示bug引用。因此,您可以通过TortoiseSVN界面轻松选择要合并的修订版本,以便报告任何bug修复,而不会(太多)冲突。我已经用我们的一些分支/发布策略更新了我的问题。这可能会澄清一些问题。投票支持解释如何使用SVN的努力。问题是有多个用户提交,并且一个文件可能有来自不同用户的多个修订。当我们决定离开我的时候