是否可以将提交相互绑定,使它们在二等分、樱桃选择、恢复等方面成为原子的?

2024-01-24

考虑错误修复的情况,它会导致预期输出发生微小变化,从而迫使测试套件发生微小变化。在同一个提交中进行这两项更改非常方便,因为它使审阅者可以清楚地了解输出中的更改内容。另一方面,有时您可能只想查看与源的差异,或与预期输出的差异,如果提交是单独的,那么这样做会更容易。此外,这两件事在逻辑上是不同的,因此做出不同的提交是有意义的。

我希望能够进行两个不同的提交,但不知何故将这两个提交以某种方式链接在一起(这样我就可以挑选、恢复等,将两个提交作为一个原子单元)。 此外,如果进行了两次不同的提交,那么测试套件将在第一次提交时失败(除非引入第三次提交来放松测试套件),从而使未来的平分变得痛苦。未来二等分失败的问题通常会鼓励我进行一次提交,但提交在逻辑上应该是不同的单元,并且对代码的提交在逻辑上与对测试套件中预期输出的提交不同。

有没有一种方法可以进行两次不同的提交,而不必竭尽全力防止 bisect 在其中一个提交上失败? (例如,必须明确提及要跳过的提交)


最终将这些更改(代码和单元测试)保留为一次提交:SCM 还能够复制给定的状态,包括程序及其测试。

如果您只需要检查代码更改,请执行 git diffsrc仅,不于tst.
由于这些链接的更改保留在一次提交中,因此您可以完全避免二分问题。

简而言之,保持简单;)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以将提交相互绑定,使它们在二等分、樱桃选择、恢复等方面成为原子的? 的相关文章

随机推荐