git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rogan Dawes <lists@dawes.za.net>
To: Martin Waitz <tali@admingilde.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>, git@vger.kernel.org
Subject: Re: [RFC] git integrated bugtracking
Date: Mon, 04 Jun 2007 11:32:06 +0200	[thread overview]
Message-ID: <4663DC16.8080309@dawes.za.net> (raw)
In-Reply-To: <20070603230702.GC16637@admingilde.org>

Martin Waitz wrote:
> hoi :)
> 
> On Sun, Jun 03, 2007 at 10:16:32PM +0200, Pierre Habouzit wrote:
>>   Well I went that way, but we loose the quite cool "if I branch my
>> repository I branch the bugs coming with them too"-feature. And I'd be
>> sad to give that up. But maybe it's an error to want to use git to
>> encode that relation.
> 
> Just store the commit which introduced the bug (or where the bug
> was first found) and you will get that, too.  You only have to check
> if this commit is reachable by a given branch to see if it is affected.
> When you fix the bug you store the commit id that fixed it and then
> you can check every branch if it points into bad..good.
> 
> You can also do this for released versions.
> If you have the bug database inside the repository you can't report
> any bugs for a released version, because it is, well already released.
> 

Ok, that seems reasonable.

Now, how do you store updates to a bug? i.e. followup questions and answers?

As suggested in another message, I think that the bug id would have to 
be the hash of the initial report (incl whatever metadata is considered 
interesting).

I think that the individual reports might be stored by their id, perhaps 
via a fan out dir, like the .git/objects directory. Attachments can be 
stored by their hash in a separate directory structure. Modifications to 
a report would simply be appended to the original report. Simultaneous 
modifications could be dealt with by merging the two files, probably 
using a custom merge driver.

Obviously the format of a bug report and follow up message would need to 
be quite strictly defined and adhered to, for the merge driver to be 
able to do its work with the minimum/zero user interaction.

Closed bugs would be deleted from the filesystem, but would obviously be 
available via the history.

Indexes or categories could be implemented by means of symlinks/symrefs 
in a different set of "index directories". e.g.

/categories/drivers/deadbeef -> ../../bugs/de/adbeef
/assignedto/joe@example.org/deadbeef -> ../../bugs/de/adbeef

or similar. These might not be strictly necessary, since all that 
information will be in the report anyway. Perhaps the indexes would be 
stored simply as cached data, and rebuilt if out of date.

The porcelain would then take care of presenting the bugs to the user in 
the preferred format, much like we have gitk, gitweb, qgit, tig, etc.

Does any of this make sense?

Rogan

  reply	other threads:[~2007-06-04  9:33 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-03 11:48 [RFC] git integrated bugtracking Pierre Habouzit
2007-06-03 12:35 ` Yann Dirson
2007-06-03 13:23   ` Pierre Habouzit
2007-06-03 12:59 ` Michael Poole
2007-06-03 13:31   ` Pierre Habouzit
2007-06-03 13:48     ` Johan Herland
2007-06-03 15:19       ` Pierre Habouzit
2007-06-03 15:44         ` Matthieu Moy
2007-06-03 16:07           ` Pierre Habouzit
2007-06-03 17:35             ` david
2007-06-03 18:49               ` Pierre Habouzit
2007-06-03 19:07                 ` david
2007-06-03 20:31                   ` Yann Dirson
2007-06-03 17:10         ` Yann Dirson
2007-06-03 20:04         ` Yann Dirson
2007-06-03 20:21           ` Pierre Habouzit
2007-06-04 22:03         ` Yann Dirson
2007-06-04 22:25           ` Pierre Habouzit
2007-06-03 19:22 ` Linus Torvalds
2007-06-03 20:16   ` Pierre Habouzit
2007-06-03 23:07     ` Martin Waitz
2007-06-04  9:32       ` Rogan Dawes [this message]
     [not found]         ` <20070604102037.GB7758@.intersec.eu>
2007-06-04 13:29           ` Rogan Dawes
2007-06-03 20:17   ` Yann Dirson
2007-06-03 20:32     ` Pierre Habouzit
2007-06-09 12:12 ` Pierre Habouzit
2007-06-09 16:23   ` Jakub Narebski
2007-06-10  2:44   ` Daniel Barkalow
2007-06-10  7:44     ` Johannes Schindelin
2007-06-10  6:59   ` Martin Langhoff
2007-06-10  7:35     ` Junio C Hamano
2007-06-10  8:38       ` Martin Langhoff
2007-06-10  8:50       ` Jan Hudec
2007-06-11 18:51         ` Jon Loeliger
2007-06-12  8:54           ` Guilhem Bonnefille
2007-06-10  8:37     ` Jan Hudec
2007-06-10  8:55       ` Martin Langhoff
2007-06-10 10:16         ` Pierre Habouzit
2007-06-10 23:14           ` Martin Langhoff
2007-06-11  8:45             ` Pierre Habouzit
2007-06-11 10:00               ` Martin Langhoff
2007-06-10 10:49         ` Jan Hudec
2007-06-10 22:07       ` Matthieu Moy
2007-06-10 13:34     ` Pierre Habouzit
2007-06-10 13:43     ` Pierre Habouzit
2007-06-10 14:02     ` Pierre Habouzit

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4663DC16.8080309@dawes.za.net \
    --to=lists@dawes.za.net \
    --cc=git@vger.kernel.org \
    --cc=tali@admingilde.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).