faro213108 发表于 2008-11-26 16:43:30

请问测试后开发人员如何将两个版本的代码进行合并

当开发人员发布了一个版本1之后,QA 进行测试。当QA发现Bug之后,开发人员在版本1中进行修复。与此同时,开发人员在开发环境中开发新的功能。
那么请问开发人员如何将修复后的版本1和开发环境中开发的版本进行合并呢?

RYAN.D 发表于 2008-11-26 22:59:51

首先是开发人员提交修复bug的fix时 不应该提交到版本1中. 下面描述一下过版本测试的概要过程: 对某个版本的测试时, 先给主线(main trunk)打个tag, 然后通过daily build脚本从cvs或svn上取代码并自动构建, 测试人员对该build版本进行测试和提bug, 开发人员针对提的bug进行修复, 并将fix提交到主线上, 下一个版本的测试重复上述过程(打tag->build包->测试->提bug->fix bug->commit to main).

通常产品的开发都是多个版本平行开发的, 那么上述的所说的概要过程的主线就可以用主线的一个分支来代替. 而新开发的功能就在主线的另一个分支上进行开发.

对于你提出的问题, 我觉得多个版本的之间代码的merge应该是单向的, 主线(main trunk)融合(接受)其他分支的bug fix代码和新功能的代码, 当主线包含了所有分支的代码后, 新版本的测试或新功能的开发是基于主线上建立的新分支.

融合的频率, 每个产品或项目都不一定, 需要结合实际的产品计划进行决策或调整.

至于如何Merge的问题, 可以由产品经理或开发经理针对未来的产品计划对代码进行取舍, 或有产品经理或开发经理进行code review后指定哪些bug fix的代码需要提交到主线, 然后让开发人员手工merge.

不知道这些解释能否解答你的问题, 欢迎指正.

Thanks in advance. :)

WayneT 发表于 2008-11-27 00:16:51

“当QA发现Bug之后,开发人员在版本1中进行修复”

开发人员不可能在“版本1”里进行修复, 你肯定是理解错了!版本1 是QA VERSION

RUAN 解释的很详细

wangjingying 发表于 2008-11-27 16:56:34

2楼的同志真专业啊.......
页: [1]
查看完整版本: 请问测试后开发人员如何将两个版本的代码进行合并