我使用的是Bugzilla和SVN。目前,Bugzilla的项目版本是1.0版本。如果我决定在SVN中为2.0版创建标签,该怎么办?我如何通知Bugzilla,我现在将在2.0版本上工作?我是否只是在Bugzilla中编辑项目的版本号? Buut如果用户想为1.0版提交bug,该怎么办? Bugzilla如何处理这个问题?当我的软件有新版本时,Bugzilla如何知道我现在正在开发新版本?
非常感谢!
我使用的是Bugzilla和SVN。目前,Bugzilla的项目版本是1.0版本。如果我决定在SVN中为2.0版创建标签,该怎么办?我如何通知Bugzilla,我现在将在2.0版本上工作?我是否只是在Bugzilla中编辑项目的版本号? Buut如果用户想为1.0版提交bug,该怎么办? Bugzilla如何处理这个问题?当我的软件有新版本时,Bugzilla如何知道我现在正在开发新版本?
非常感谢!
当您想要处理新版本的项目时,可以定义新版本。这使您可以将错误分配给当前版本和/或未来版本,并指出错误将在哪个版本中修复。这可以帮助优先考虑您的工作,并帮助您的用户了解什么时候计划要修复。有关详细信息,请参阅文档section 3.4.3。
要Subversion和Bugzilla的关联,则可以在ScmBug,或其他集成像Eclipse的Mylyn管理,你可以有Bugzilla的任务“活跃”在您的Eclipse工作区Subversion和Bugzilla.For例如使用Mylyn之间的关系,所以任何Subversion提交与任务相关联。 developerworks上有一个不错的introduction to Mylyn。
当您建立关系并提交更改时,集成将使任务编号与修订相关联。
如果您想在Subversion中进行标记时自动创建Bugzilla版本,下面有一些指针,尽管您可能会更好地手动执行此操作,因为创建标记并不意味着该产品已经构建并可供您的用户使用(除非您扩展挂钩以创建包)。
您可以为Subversion设置post-commit hook,只要您提交更改,就会调用该钩子。您可以检查提交类型是否为tags目录的副本,并通过API调用Bugzilla创建新版本。
您需要为您的发布标签定义一些约定,以便不为所有标签创建版本(例如,如果标签以“发布”开头,则调用API)。
Python Subversion expite pysvn可以帮助你简化你的钩子处理。
Subversion documentation还有一些示例脚本可以帮助您入门。
我的理解是,Bugzilla中的版本是发现错误的版本(来自文档:错误存在的最早版本)。
我目前的做法是对每个未来版本都有一个跟踪错误,这是IIRC在Mozilla时代处理事情的方式。
Bugzilla自此引入了概念,如Target Milestones和Flags,它们也可用作高级搜索中的搜索条件。