Skip to main content

Introducing SCM/issue tracker cross-linking daemon

Posted by kohsuke on March 29, 2008 at 12:02 PM PDT

I've further updated the tasks library so that I can programatically interact with the issue tracker, then build a new daemon on it.

This new daemon, scm-issue-link, monitors SCM commits. If commit messages contain references to issues, the daemon then updates those issues, creating back-links to the SCM commits. A similar feature can be seen in other issue trackers, like Trac or JIRA.

This makes it easier for developers to later go back the project history and determine what changes are made for a particular issue. With this daemon, this feature is finally available for any projects.

To use this, first add the daemon user (scm_issue_link) as a developer on your project. This tells daemon that you'd like him to update issues in your project. The daemon has to periodically poll to see what project he's invited on, so it will take up to an hour for this initial phase to complete.

Once the daemon is hooked, simply reference issues when you make commits. The daemon understands several syntaxes, like "issue #50" "Issue 100" or "HUDSON-123". Within a few minutes, the daemon will update issues with back references.

See a sample issue updated by this daemon, and if you have any suggestions/ideas about how the daemon can be improved, let me know. If you are interested in hacking the daemon, that is welcome, too!


This works very nice. I have noticed from your commit messages that if you enter "[fixed]" it will mark the issue as resolved. I looked at the project page for the daemon but didnt see any mentioning of this keyword. Are there any other useful keywords that the daemon looks for?

I updated the document to mention "[FIXED]"

Could the comments be listed as coming from the user who did the commit, as opposed to the name of the daemon process? Also, does it support more than one issue listed in the comment?

No, the daemon can't impersonate you. For that it needs to be able to login as you, which means it needs to know your password.

But yes, you can list multiple issues in the same comment and that will work.