我们使用 subversion,在每次签入期间,脚本都会创建一个包含所有差异的补丁文件。现在,对于同一问题/缺陷,可能会进行多次签入,最终我们会得到多个补丁文件。现在要查看某个问题的综合更改,必须合并所有补丁文件。有办法做到吗?
或者解决同一问题的另一种方法是:subversion 中是否有一种方法可以获取作为特定注释的一部分完成的所有更改的组合差异?例如:
签入评论:“123:第一次更改”
签入评论:“123:第二组更改”
签入评论:“123:第三次更改”..
有没有办法获得评论前缀为 123 的所有更改的组合差异?
patchutils 的 combinediff 可以为您组合差异。
(无耻地借用了之前的SO问题。)
从第一个变更集之前的修订版本开始创建一个新分支。 在新分支中,按顺序合并问题的每个变更集。 比较新分支的开始和最终结果。
(如果您进行基于问题的分支,您会自动遇到上述情况)。
Mercurial 有一个很好的扩展来处理补丁集合,即 mq 扩展。反过来,它是基于 quilt (http://savannah.nongnu.org/projects/quilt),一个旨在将补丁相互堆叠的系统。