51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3474|回复: 3
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-11-26 16:43:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
当开发人员发布了一个版本1之后,QA 进行测试。当QA发现Bug之后,开发人员在版本1中进行修复。与此同时,开发人员在开发环境中开发新的功能。
那么请问开发人员如何将修复后的版本1和开发环境中开发的版本进行合并呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

4#
发表于 2008-11-27 16:56:34 | 只看该作者
2楼的同志真专业啊.......
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-11-27 00:16:51 | 只看该作者
“当QA发现Bug之后,开发人员在版本1中进行修复”

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

RUAN 解释的很详细
回复 支持 反对

使用道具 举报

该用户从未签到

2#
发表于 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.
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-16 03:59 , Processed in 0.071569 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表