0
git version 1.8.1.4
gcc (GCC) 4.7.2

你好,

我使用 git 作为我的 respostery,每次有需要添加的新功能或需要修复的错误时。我从我们最稳定的分支中创建了一个新分支,然后继续添加新功能或修复错误。通常,我可以同时处理许多新功能和错误修复。所以我可以有很多 git 分支。

这会与测试人员产生冲突,因为他们不想测试新功能或错误修复。他们希望我做的是在我完成它们后将所有内容合并到稳定分支中,然后他们一次性测试所有内容。这对测试人员有好处,因为他们只测试一次。

但是,我希望他们做什么:

1) Test the new feature or bug fix on that branch.
2) Once it has passed I will merge it to the stable branch.
3) Once is has been merged into the stable branch test it again to make sure it still works .

这意味着测试人员必须进行更多测试,而他们不喜欢那样做。

问题是,在测试之前将所有内容合并在一起会产生更多错误。因为我会将一个未经测试的分支合并到一个稳定的分支中。如果我将几个分支合并到一个稳定的分支中,这可能会导致稳定的分支出现更多错误。

问题:

1) I am just wondering is my concept correct or are the testers correct?
2) Is there any offical or standard document that I can use to show them that everything should be tested first before merging?

非常感谢您的任何建议,

4

1 回答 1

1

任何一种论点都没有绝对的对与错。就个人而言,我会采取一些中间立场(并且在其他具有类似测试要求的地方也这样做过)。我会将最稳定的分支分支到主题分支(features_and_fixes,或其他类似聪明的东西)。为每个单独的新功能或错误从该分支分支这有一个好处,一开始可能不太清楚。您正在为所有单独的功能和修复从一个共同的基础上分支出来。这应该使合并更改变得更加容易。

一旦您测试了每个单独的功能或修复(因为我假设您的测试人员确实是验证者并且您彻底测试了自己的代码),那么您可以合并回公共主题分支。合并每个新功能或修复后再次测试您的更改,并在您找到与合并相关的错误时修复它们。

一旦一切就绪,您就可以将整个粉碎合并到原始稳定分支中。如果合并导致问题,一个提交会让你回到你开始的地方。这将意味着您需要进行更多测试(因为您必须测试自己的代码两次),但您也可以快速安全地合并几乎任意数量的更改。你是一个远离撤消大量变化引起的混乱的人。我就是这样...

于 2013-11-14T05:41:48.323 回答