Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to make sure bug fixes in a version branch in Subversion are merged into the trunk

We are managing our software versions as branches in Subversion. The latest upcoming release is the trunk. Older released versions are a branch (also tagged per build and release). When a developer is fixing a bug in an older version, it is his responsibility to merge the fix into the trunk. In case this step is missed, it is hard to notice until, maybe, the bug shows up again in a later version. Then we have to debug and fix it all over again.

Is there a way to monitor the merges to make sure they are done?

Or is there a better way to use Subversion's branching to get better results.

UPDATE: People pointed the solution should include a bug tracking system. We do use Jira and mark every commit with the Jira issue ID. No further integration is implemented right now.

It is possible the solution is in having a better process. But if there are any tools to support this better process, I would like to learn about their existence, or the way to use them.

like image 321
Ron Harlev Avatar asked Oct 08 '09 17:10

Ron Harlev


1 Answers

If your bugs are in a bug tracker (and they should be), you can use it to track this. There should be some way in your bug tracker to mark which versions are affected.

To make sure that a closed bug is actually resolved, QA/testing people should test that the bug is actually fixed in all supported releases.

SVN's merge tracking can help some, but ultimately it can't tell you:

  • was the bug fixed by an unrelated change on trunk, and this no patch was needed?
  • did the patch from branch not work on trunk, due to other changes?
  • did the patch from branch not apply at all to trunk, and a different patch was needed on trunk?

Testing is really the best way to be sure a bug is gone. If you don't have QA/test people, you can have a different developer do it or hire software testers.

like image 143
derobert Avatar answered Oct 26 '22 23:10

derobert