[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Modifying commit messages

From: Pablo Beltran <pablo_at_svnflash.com>
Date: Fri, 14 Jan 2011 11:21:53 +0100

Where is the bug file versioned? I think that is the point. In my opinion it
should not be versioned across branches because that would be a headache.
Hence it should not be placed under the trunk and you might create a new
directory "bugs" at the same level that trunk, tags and branches. In that
way, you will not create new versions of the bug file every time the trunk
is copied.

In your example, the content of the file (.../project z/bugs/list.txt )
would be:

.................
BZ123: 100
.................

all the time (until other bug is found and the bug list is updated)

You would get these results after executing the script:

bug_finder.sh A (<- Nothing)
bug_finder.sh B (<- Found bug BZ123 at r100)
bug_finder.sh C (<- Found bug BZ123 at r100)
bug_finder.sh D (<- Found bug BZ123 at r100) (This is the branch created at
r125)

That would happen because the r100 belongs to the log of B,C and D but not
A.

Normally, you would use the HEAD revision of the bug file. But you have also
the history of your bugs (log of the bug file) what might be very helpful.

On Fri, Jan 14, 2011 at 10:26 AM, Jonathan Oulds
<jonathan_oulds_at_mcafee.com>wrote:

> Thank you for your response,
>
> The problem with keeping a versioned list of bugs in a file is that it only
> allows you to update the list in the revision that relates to the day you
> found the bug, and not the day you caused the bug.
>
> Example:
> The head of /trunk is at revision 500, I have three branches A, B and C
> taken from revisions 50, 100 and 150 respectively of the trunk. Now during
> testing I discover a bug BZ123 that was introduced at revision 100 so I
> update the bug list file in branches B and C; this works fine until I decide
> to create another branch from revision 125, BZ123 is not in my bug list text
> file at revision 125 so I would need to examine the head bug list file and
> copy across the bug numbers that are relevant. I'm not saying your system
> will not work, but when you take into account, merging and reverting etc.
> it all becomes a headache for the maintainer.
>
> I did initially consider a simple text file but rejected it for the above
> reasons. Please let me know if I've misunderstood your suggestion. After
> all I'm looking for the simplest solution.
>
> Jonathan.
>
>
> On 13/01/2011 18:20, Pablo Beltran wrote:
>
>> I think it will work but you don't need to change the commit message to
>> achieve that. You can create a plain text file (bug list) and versioning
>> it in Subversion.
>>
>> For example, you may use this simple format:
>>
>> .......
>> bug x: r1, r2, r3
>> bug y: r2, r7
>> .....
>>
>> and look for revision numbers in the list instead of bug names.
>>
>> Example:
>> "does bug x appears in branch y?"
>> It's the same that checking whether any revision number retrieved from
>> /svn log "branch y" /is present in the record for the "bug x" (r1,r2 or
>> r3 in the example).
>>
>> I think that writing that script is also quite simple and the solution
>> more maintainable and traceable. I think (not sure) that changing commit
>> messages is out of version control scope and you would loss traceability
>> with your solution: today you may think that "bug x" was introduced in
>> r1 and appears in "branch y". Next week, you might discover that "bug
>> x" was really introduced in r2 and then appears in "branch z" but not in
>> "branch y". Sou you should change again the comment for r1 to reflect
>> that really it was not the introduction of the bug. If you forget do it,
>> surely next moth you will try to fix a bug on "branch y" which was not
>> affected by the bug.
>>
>>
>> I have another question. Would you need to answer "where does bug x
>> appears?"
>>
>> Pablo.
>>
>> On Thu, Jan 13, 2011 at 5:46 PM, Jonathan Oulds
>> <jonathan_oulds_at_mcafee.com <mailto:jonathan_oulds_at_mcafee.com>> wrote:
>>
>> Hello,
>>
>> Currently we track bug fixes by including a reference number within
>> the commit message, I'm sure this is common practice.
>>
>> However we would also like to keep track of the revision where bugs
>> were introduced. As a use case, consider a project with many
>> branches and tags, now imagine that a bug is discovered to have been
>> introduced at an early stage of the project e.g. revision 100. All
>> branches taken after revision 100 will potentially have the bug all
>> branches taken prior to revision 100 will not. The problem here is
>> that as the number of bugs and branches increase the job of
>> answering the question "does bug x appear in branch y?" becomes ever
>> more difficult.
>>
>> As a possible solution we are considering modifying commit messages
>> to indicate the bugs introduced in each revision. It should then be
>> possible to answer the above question with a simple svn log + grep.
>>
>> I would be interested to hear any feedback the community has on this.
>> Jonathan Oulds
>>
>>
>>
>
Received on 2011-01-14 11:22:32 CET

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.