SVN 与 Bug 跟踪/票务软件集成
我想知道是否有任何软件可以将票务系统(或错误跟踪)与 SVN 集成,但是以特定的方式。我想禁止任何没有票证(或错误ID)的代码更改。
例如:
- 每个开发人员都对 SVN 具有只读访问权限 - 他可以更新源,但不能提交。
- 每次提交都必须包含 Bug/票证 ID
- 即使对于优化任务,开发人员也必须为自己创建票证,然后实现一些东西,
我知道有一些工具(例如 Mylyn)可以帮助票务系统/SVN 集成,但开发人员始终可以提交源代码。
我没有任何票务系统环境(我可以使用 Trac 以及 BugZilla 或任何其他),但必须使用 SVN 作为代码存储库。
您对如何以这种方式集成这些服务有什么想法吗?
I was wondering is there any software, that integrates ticketing system(or bug tracking) with SVN, but in a specific way. I want to prohibit any code changes, that does not have ticket (or bug id).
For example:
- Each developer has read-only access to SVN - he can update sources, but can not commit.
- Each commit must contain Bug/ticket id
- Even for optimization tasks, developer must create ticket for himself and then implement some stuff
I know there are some tools like Mylyn, that helps with ticketing system/SVN integration, but developer can always commit the sources.
I don't have any environments for ticketing system (I can use Trac as well as BugZilla or any other), but there must use SVN as a code repository.
Do you have any ideas how to integrate these services this way?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
对于这种策略,您必须编写一个 Hook 脚本来检查日志消息中是否有票证 id,当然还要检查票证 id 是否属于适当的项目。此外,您可以使用 Redmine 作为票证系统。
For this kind of policy you have to write a Hook Script which checks if there is a ticket id in the log message and of course check if the ticket id belongs to the appropriate project. Furthermore you can use things like Redmine as a ticket system.
我最近一直在使用TFS。它能够设置类似的工作流程 - 您必须创建“工作项”,您可以在其中附加错误,也可以向其提交更改。如果不首先创建错误、不首先创建工作项,就不可能提交。
这让我抓狂,我改变了设置,因为我的工作流程是这样的:
实际上,我的工作流程更像是这样:
总体效果是,我可以立即修复的错误仍然保留在系统中,因为我不会在荒谬的官僚错误报告系统上浪费时间。对您来说哪个更重要 - 快乐、高效的开发人员,还是从 SVN 中提取的令人印象深刻的报告?
I've been using TFS recently. That has the capability to set up a similar workflow - you have to create "work items", to which you can attach bugs, to which you can commit changes. It's impossible to commit without first creating a bug, without first creating a work item.
It sent me crazy and I changed the settings, because my workflow went like this:
Actually, my workflow went more like this:
The overall effect is that bugs I could have fixed in no time at all remained in the system because I wasn't going to waste my time on absurdly bureaucratic bug reporting systems. What's more important to you - happy, productive developers, or impressive-looking reports pulled from SVN?
如果您确实想要的话,可以看看gurtle,一个 tortoise 插件,它允许用户调出 bugz 列表。按照该模板,您可以提供一种快速轻松地创建案例/问题(如果没有)的方法。
除了形式之外,我不得不说,我认为你的目标是错误的并且适得其反。一些善意的流程/政策有时听起来不错,但实际上最终会变成一场噩梦,浪费时间和资源。这是浪费时间和糟糕流程的一个很好的例子。
If you really want to you can take a look at gurtle, a plugin for tortoise that allows users to bring up a list of bugz. Following that template you can offer a way to quickly and easily create a case/issue if there isn't one.
Aside form that I have to say I think your goal is wrong-headed and counter-productive. Some well-meaning processes/policies sound good sometimes, but in practice end up being a nightmare and wastes of time and resources. This is a good example of a waste of time and bad process.