{"thread":{"id":"34453","subject":"Git counterpart to SVN bugtraq properties?","startedAt":"2013-07-17T13:03:14Z","lastAt":"2013-10-04T12:36:41Z","messageCount":10,"participants":["Marc Strapetz","John Keeping","Jonathan Nieder","Thomas Koch"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"223581","messageId":"51E69612.6020201@syntevo.com","threadId":"34453","inReplyTo":null,"subject":"Git counterpart to SVN bugtraq properties?","fromName":"Marc Strapetz","fromEmail":"marc.strapetz@syntevo.com","sentAt":"2013-07-17T13:03:14Z","receivedAt":"2013-07-17T13:03:14Z","isPatch":false,"sender":{"key":"marc.strapetz@syntevo.com","avatar":"https://avatars.githubusercontent.com/u/3380730?v=4"},"body":"I'm looking for a specification or guidelines on how a Git client should\nintegrate with bug tracking systems. For SVN, one can use\nbugtraq-properties [1] to specify e.g. the issue tracker URL or how to\nparse the bug ID from a commit message. AFAIU, there is nothing\ncomparable for Git [2]? If that's actually the case, is someone\ninterested in working out a similar specification for Git?\n\n[1]\nhttp://code.google.com/p/tortoisesvn/source/browse/tags/version_1.2.0/doc/issuetrackers.txt\n\n[2] http://stackoverflow.com/questions/17545548\n\n-Marc\n"},{"id":"223583","messageId":"20130717133357.GB2337@serenity.lan","threadId":"34453","inReplyTo":"51E69612.6020201@syntevo.com","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"John Keeping","fromEmail":"john@keeping.me.uk","sentAt":"2013-07-17T13:33:57Z","receivedAt":"2013-07-17T13:33:57Z","isPatch":false,"sender":{"key":"john@keeping.me.uk","avatar":"https://avatars.githubusercontent.com/u/1702081?v=4"},"body":"On Wed, Jul 17, 2013 at 03:03:14PM +0200, Marc Strapetz wrote:\n> I'm looking for a specification or guidelines on how a Git client should\n> integrate with bug tracking systems. For SVN, one can use\n> bugtraq-properties [1] to specify e.g. the issue tracker URL or how to\n> parse the bug ID from a commit message. AFAIU, there is nothing\n> comparable for Git [2]? If that's actually the case, is someone\n> interested in working out a similar specification for Git?\n> \n> [1] http://code.google.com/p/tortoisesvn/source/browse/tags/version_1.2.0/doc/issuetrackers.txt\n> \n> [2] http://stackoverflow.com/questions/17545548\n\nThe Git way to record the issue ID as a footer in the commit message.\nSee for example [1].  Although I'm not aware of any standard for naming\nthis footer.\n\nIn terms of recording the URL and other data, I think you'd want a\ndotfile in the repository (perhaps .bugzilla).  This shoudld probably be\nin the gitconfig format, like .gitmodules.\n\nI think \"all\" it needs is to draw up a spec for the names of keys and\nformat of their values, along with the format of footer(s) identifying\nissues associated with a commit and to persuade UI developers to support\nit... ;-)\n\n[1] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4a88f73f14f6d6c94616538427e1235a6d0a5885\n"},{"id":"223648","messageId":"51E7EE83.5020905@syntevo.com","threadId":"34453","inReplyTo":"20130717133357.GB2337@serenity.lan","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Marc Strapetz","fromEmail":"marc.strapetz@syntevo.com","sentAt":"2013-07-18T13:32:51Z","receivedAt":"2013-07-18T13:32:51Z","isPatch":false,"sender":{"key":"marc.strapetz@syntevo.com","avatar":"https://avatars.githubusercontent.com/u/3380730?v=4"},"body":"On 17.07.2013 15:33, John Keeping wrote:\n> On Wed, Jul 17, 2013 at 03:03:14PM +0200, Marc Strapetz wrote:\n>> I'm looking for a specification or guidelines on how a Git client should\n>> integrate with bug tracking systems. For SVN, one can use\n>> bugtraq-properties [1] to specify e.g. the issue tracker URL or how to\n>> parse the bug ID from a commit message. AFAIU, there is nothing\n>> comparable for Git [2]? If that's actually the case, is someone\n>> interested in working out a similar specification for Git?\n>>\n>> [1] http://code.google.com/p/tortoisesvn/source/browse/tags/version_1.2.0/doc/issuetrackers.txt\n>>\n>> [2] http://stackoverflow.com/questions/17545548\n> \n> The Git way to record the issue ID as a footer in the commit message.\n> See for example [1].  Although I'm not aware of any standard for naming\n> this footer.\n\nI wasn't aware of that and probably I'm not the only one. For instance,\nwe are using JIRA and typical commit messages look like\n\n SG-1234: fix something\n\n More details on what has been fixed ...\n\nSo the issues ID is present in the first line. This has the advantage\nthat every GUI client will display it, as usually the short version of\nthe commit message (which is used everywhere) reaches up to the first\ndot or LF. Hence it's pretty easy to display a hyperlink for the\n\"SG-1234\" part. bugtraq properties allow to define whether the issue ID\nshould be appended to the top or bottom of the commit message. So looks\nlike such an option makes sense for Git as well.\n\n> In terms of recording the URL and other data, I think you'd want a\n> dotfile in the repository (perhaps .bugzilla).  This shoudld probably be\n> in the gitconfig format, like .gitmodules.\n\nHaving such a file sounds reasonable for storing the defaults, though\nlet's call it .bugtraq or have some other more general name. Similar to\n.gitmodules, it makes sense to have the actual properties stored in\n$GIT_DIR/config which can be \"initialized\" from this .bugtraq file. The\narguments are the same as for submodules: URLs stored in .bugtraq might\nneed to be changed, depending on the client location (firewall/proxy...).\n\nOr we could just have $GIT_DIR/config properties *optionally*,\noverriding the .bugtraq properties, as for most users the default\nconfiguration will work fine anyway.\n\n> I think \"all\" it needs is to draw up a spec for the names of keys and\n> format of their values, along with the format of footer(s) identifying\n> issues associated with a commit and to persuade UI developers to support\n> it... ;-)\n\nI'll try to compose something here. But I'm wondering how we could\nattract a couple of developers or users to join in this discussion?\n\n-Marc\n"},{"id":"228470","messageId":"5249ACCB.5090007@syntevo.com","threadId":"34453","inReplyTo":"20130717133357.GB2337@serenity.lan","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Marc Strapetz","fromEmail":"marc.strapetz@syntevo.com","sentAt":"2013-09-30T16:54:35Z","receivedAt":"2013-09-30T16:54:35Z","isPatch":false,"sender":{"key":"marc.strapetz@syntevo.com","avatar":"https://avatars.githubusercontent.com/u/3380730?v=4"},"body":"On 17.07.2013 15:33, John Keeping wrote:\n> On Wed, Jul 17, 2013 at 03:03:14PM +0200, Marc Strapetz wrote:\n>> I'm looking for a specification or guidelines on how a Git client should\n>> integrate with bug tracking systems. For SVN, one can use\n>> bugtraq-properties [1] to specify e.g. the issue tracker URL or how to\n>> parse the bug ID from a commit message. AFAIU, there is nothing\n>> comparable for Git [2]? If that's actually the case, is someone\n>> interested in working out a similar specification for Git?\n>>\n>> [1] http://code.google.com/p/tortoisesvn/source/browse/tags/version_1.2.0/doc/issuetrackers.txt\n>>\n>> [2] http://stackoverflow.com/questions/17545548\n> \n> The Git way to record the issue ID as a footer in the commit message.\n> See for example [1].  Although I'm not aware of any standard for naming\n> this footer.\n> \n> In terms of recording the URL and other data, I think you'd want a\n> dotfile in the repository (perhaps .bugzilla).  This shoudld probably be\n> in the gitconfig format, like .gitmodules.\n> \n> I think \"all\" it needs is to draw up a spec for the names of keys and\n> format of their values, along with the format of footer(s) identifying\n> issues associated with a commit and to persuade UI developers to support\n> it... ;-)\n\nFinally, I've created a minimal spec which is sufficient to parse and\ndisplay issue IDs:\n\nhttps://github.com/mstrap/bugtraq/blob/master/specification.txt\n\nI'd appreciate comments and pull requests.\n\n-Marc\n"},{"id":"228472","messageId":"20130930185513.GS9464@google.com","threadId":"34453","inReplyTo":"5249ACCB.5090007@syntevo.com","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2013-09-30T18:55:13Z","receivedAt":"2013-09-30T18:55:13Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Hi,\n\nMarc Strapetz wrote:\n>> On Wed, Jul 17, 2013 at 03:03:14PM +0200, Marc Strapetz wrote:\n\n>>> I'm looking for a specification or guidelines on how a Git client should\n>>> integrate with bug tracking systems.\n[...]\n> Finally, I've created a minimal spec which is sufficient to parse and\n> display issue IDs:\n>\n> https://github.com/mstrap/bugtraq/blob/master/specification.txt\n\nNeat. :)\n\nIt reminds me a little of Gerrit's commentlink functionality, though\nthat tries to solve a different / more generic problem (automatic\nlinking in commit messages in general, not just to bug trackers):\nhttps://gerrit-review.googlesource.com/Documentation/config-gerrit.html#_a_id_commentlink_a_section_commentlink\n\nSome projects use more than one bug tracker.  For example, a distro\nmight have its own bug tracking system and also sometimes make commits\nthat refer to the upstream bug tracker.  I don't think that's\nimportant to necessarily address in the first version of a project\nlike this, but thought I should mention it to help plans for the\nfuture.\n\nGerrit keeps its configuration in a file named \"project.config\" in the\ntree associated to the refs/meta/config commit so a single\nconfiguration can be applied to the entire repository.  Which\n.gitbugtraq file should take effect in a repository with multiple\nbranches?\n\nHope that helps,\nJonathan\n"},{"id":"228508","messageId":"524AB8FD.2060104@syntevo.com","threadId":"34453","inReplyTo":"20130930185513.GS9464@google.com","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Marc Strapetz","fromEmail":"marc.strapetz@syntevo.com","sentAt":"2013-10-01T11:58:53Z","receivedAt":"2013-10-01T11:58:53Z","isPatch":false,"sender":{"key":"marc.strapetz@syntevo.com","avatar":"https://avatars.githubusercontent.com/u/3380730?v=4"},"body":"On 30.09.2013 20:55, Jonathan Nieder wrote:\n> Hi,\n> \n> Marc Strapetz wrote:\n>>> On Wed, Jul 17, 2013 at 03:03:14PM +0200, Marc Strapetz wrote:\n> \n>>>> I'm looking for a specification or guidelines on how a Git client should\n>>>> integrate with bug tracking systems.\n> [...]\n>> Finally, I've created a minimal spec which is sufficient to parse and\n>> display issue IDs:\n>>\n>> https://github.com/mstrap/bugtraq/blob/master/specification.txt\n> \n> Neat. :)\n> \n> It reminds me a little of Gerrit's commentlink functionality, though\n> that tries to solve a different / more generic problem (automatic\n> linking in commit messages in general, not just to bug trackers):\n> https://gerrit-review.googlesource.com/Documentation/config-gerrit.html#_a_id_commentlink_a_section_commentlink\n\nThanks, that's an interesting pointer. I have included some of the ideas\nin this new draft (section 2 and new section 3):\n\nhttps://github.com/mstrap/bugtraq/blob/wip/specification.txt\n\n> Some projects use more than one bug tracker.  For example, a distro\n> might have its own bug tracking system and also sometimes make commits\n> that refer to the upstream bug tracker.  I don't think that's\n> important to necessarily address in the first version of a project\n> like this, but thought I should mention it to help plans for the\n> future.\n\nI'd even say it's a good idea to prepare for multiple configurations\nright from the beginning :) I've changed that in the draft as well.\n\n> Gerrit keeps its configuration in a file named \"project.config\" in the\n> tree associated to the refs/meta/config commit so a single\n> configuration can be applied to the entire repository.  Which\n> .gitbugtraq file should take effect in a repository with multiple\n> branches?\n\nActually, if the configuration changes over time, .gitbugtraq does not\nwork well, at least when working with older commits. However, the\nadvantage of this regular file is that users will get it automatically\nwhen cloning a repository for the first time and they will get updates\nto this file on Pull as well. So the Bugtraq configuration works out of\nthe box.\n\nTo set up refs/meta/config, you have to be a Git expert, IMO. And --\nmore important -- a user (or the client) needs to invoke additional\ncommands to receive the configuration (or updates of the configuration).\nNevertheless I see the advantages of this singular file as well. So I'm\nnot sure, how to proceed here.\n\n-Marc\n"},{"id":"228509","messageId":"524ABEF2.1060008@syntevo.com","threadId":"34453","inReplyTo":"CACXt3y82u3KtR7cq5Kyb1PDi1aq7095uO2-eGQTLq0yDuNZ73Q@mail.gmail.com","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Marc Strapetz","fromEmail":"marc.strapetz@syntevo.com","sentAt":"2013-10-01T12:24:18Z","receivedAt":"2013-10-01T12:24:18Z","isPatch":false,"sender":{"key":"marc.strapetz@syntevo.com","avatar":"https://avatars.githubusercontent.com/u/3380730?v=4"},"body":"On 30.09.2013 21:42, James Sharpe wrote:\n> You could also use git notes to store the information. The advantage\n> there is they can be added to commits without changing the history.\n> Gerrit and jenkins can auto generate this sort of metadata via plugins.\n\ngit notes could be the preferred storage for issues IDs when the client\nwants to add this kind of meta information on Commit. This would\nactually solve one weak point of SVN bugtraq properties where you can\njust specify to prepend or append an issue ID to the commit message\n(i.e. silently altering the commit message).\n\n-Marc\n\n\n> \n> On 30 Sep 2013 20:02, \"Jonathan Nieder\" <jrnieder@gmail.com\n> <mailto:jrnieder@gmail.com>> wrote:\n> \n>     Hi,\n> \n>     Marc Strapetz wrote:\n>     >> On Wed, Jul 17, 2013 at 03:03:14PM +0200, Marc Strapetz wrote:\n> \n>     >>> I'm looking for a specification or guidelines on how a Git\n>     client should\n>     >>> integrate with bug tracking systems.\n>     [...]\n>     > Finally, I've created a minimal spec which is sufficient to parse and\n>     > display issue IDs:\n>     >\n>     > https://github.com/mstrap/bugtraq/blob/master/specification.txt\n> \n>     Neat. :)\n> \n>     It reminds me a little of Gerrit's commentlink functionality, though\n>     that tries to solve a different / more generic problem (automatic\n>     linking in commit messages in general, not just to bug trackers):\n>     https://gerrit-review.googlesource.com/Documentation/config-gerrit.html#_a_id_commentlink_a_section_commentlink\n> \n>     Some projects use more than one bug tracker.  For example, a distro\n>     might have its own bug tracking system and also sometimes make commits\n>     that refer to the upstream bug tracker.  I don't think that's\n>     important to necessarily address in the first version of a project\n>     like this, but thought I should mention it to help plans for the\n>     future.\n> \n>     Gerrit keeps its configuration in a file named \"project.config\" in the\n>     tree associated to the refs/meta/config commit so a single\n>     configuration can be applied to the entire repository.  Which\n>     .gitbugtraq file should take effect in a repository with multiple\n>     branches?\n> \n>     Hope that helps,\n>     Jonathan\n>     --\n>     To unsubscribe from this list: send the line \"unsubscribe git\" in\n>     the body of a message to majordomo@vger.kernel.org\n>     <mailto:majordomo@vger.kernel.org>\n>     More majordomo info at  http://vger.kernel.org/majordomo-info.html\n> \n"},{"id":"228553","messageId":"201310041115.52948.thomas@koch.ro","threadId":"34453","inReplyTo":"51E69612.6020201@syntevo.com","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Thomas Koch","fromEmail":"thomas@koch.ro","sentAt":"2013-10-04T09:15:52Z","receivedAt":"2013-10-04T09:15:52Z","isPatch":false,"sender":{"key":"thomas@koch.ro","avatar":null},"body":"On Wednesday, July 17, 2013 03:03:14 PM Marc Strapetz wrote:\n> I'm looking for a specification or guidelines on how a Git client should\n> integrate with bug tracking systems. For SVN, one can use\n> bugtraq-properties [1] to specify e.g. the issue tracker URL ...\n\nThere's seldom a question that has not been asked before. There already is a \npopular standard for project information like the link to a bugtracker and \nmuch more: https://en.wikipedia.org/wiki/DOAP (Description of a Project) \n"},{"id":"228554","messageId":"524EA4E0.5000605@syntevo.com","threadId":"34453","inReplyTo":"201310041115.52948.thomas@koch.ro","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Marc Strapetz","fromEmail":"marc.strapetz@syntevo.com","sentAt":"2013-10-04T11:22:08Z","receivedAt":"2013-10-04T11:22:08Z","isPatch":false,"sender":{"key":"marc.strapetz@syntevo.com","avatar":"https://avatars.githubusercontent.com/u/3380730?v=4"},"body":"On 04.10.2013 11:15, Thomas Koch wrote:\n> On Wednesday, July 17, 2013 03:03:14 PM Marc Strapetz wrote:\n>> I'm looking for a specification or guidelines on how a Git client should\n>> integrate with bug tracking systems. For SVN, one can use\n>> bugtraq-properties [1] to specify e.g. the issue tracker URL ...\n> \n> There's seldom a question that has not been asked before. There already is a \n> popular standard for project information like the link to a bugtracker and \n> much more: https://en.wikipedia.org/wiki/DOAP (Description of a Project) \n\nI can't see how that relates to concepts like (SVN) bugtraq properties.\n\n-Marc\n"},{"id":"228555","messageId":"201310041436.41644.thomas@koch.ro","threadId":"34453","inReplyTo":"524EA4E0.5000605@syntevo.com","subject":"Re: Git counterpart to SVN bugtraq properties?","fromName":"Thomas Koch","fromEmail":"thomas@koch.ro","sentAt":"2013-10-04T12:36:41Z","receivedAt":"2013-10-04T12:36:41Z","isPatch":false,"sender":{"key":"thomas@koch.ro","avatar":null},"body":"On Friday, October 04, 2013 01:22:08 PM Marc Strapetz wrote:\n> On 04.10.2013 11:15, Thomas Koch wrote:\n> > On Wednesday, July 17, 2013 03:03:14 PM Marc Strapetz wrote:\n> >> I'm looking for a specification or guidelines on how a Git client should\n> >> integrate with bug tracking systems. For SVN, one can use\n> >> bugtraq-properties [1] to specify e.g. the issue tracker URL ...\n> > \n> > There's seldom a question that has not been asked before. There already\n> > is a popular standard for project information like the link to a\n> > bugtracker and much more: https://en.wikipedia.org/wiki/DOAP\n> > (Description of a Project)\n> \n> I can't see how that relates to concepts like (SVN) bugtraq properties.\n\nYou asked for a place to write the bugtracker URL to. DOAP defines a data \nstructure that also contains the bugtracker URL of a project. Just place a \ndoap file in your Git repo and parse it.\n\nRegards, Thomas Koch\n"}]}