【发布时间】:2012-06-10 05:46:02
【问题描述】:
对于代码中的每个缺陷,我都会创建单独的分支。修复缺陷后,我将这个分支合并到 master 中,所以我有如下图所示的历史记录(我们看到两个有修复的分支):
defect1 fix defect2 fix
a---b---c---d e---f
/ \ / \
---o---1---x---y---z---2---o---3---w---4---o---
问题是如何在任何时间点(例如,对于任何已关闭的缺陷)获取 fix1(分支开始 (1) 和分支结束 (2) 之间)或 fix2((3) 和 (4) 之间的差异)的差异过去)。
更新:实际问题是如何计算出 a 和 d 或 e 和 f 的 SHA 总和,以执行下一个明显的差异命令 diff <commit> <commit>
【问题讨论】:
-
就像评论一样。 Plastic SCM (www,plasticscm.com) 非常适合每个任务/缺陷模式的分支。使用塑料,您可以右键单击一个分支并按差异分支。使用命令行你可以做
cm diff <branch_name>
标签: git version-control merge branch diff