Git integration with issue trackers
With RubyMine, you can connect your commit messages with a bug tracker or an issues database, and navigate from commits in your VCS log to issues related to these commits.
Enable navigation from commit messages to issues
Press Ctrl+Alt+S to open settings and then select
.Use this dialog to create a list of the issue navigation patterns.
An issue navigation pattern maps an issue ID pattern in commit messages with the URL addresses of the referenced issues. This enables you to navigate from committed changes to issues related to these changes. As soon as RubyMine encounters a match to the issue ID pattern in a commit message, the match is displayed as a link in the Version Control tool window Alt+9. If you mention several issues, all of them will be displayed as links. Clicking such link opens the matching issue in the default browser.
In the Issue Navigation settings, Issue is a read-only field that shows the issue pattern. Link is a read-only field that shows the link to navigate from the issue pattern in the current row to the issue in the bug tracking system.
If you are using JIRA or YouTrack, click Add JIRA Pattern or Add YouTrack Pattern on the toolbar, and type the URL to the installation of the bug tracking system.
RubyMine will automatically add a regular expression that defines the navigation pattern.
For other issue tracking systems, click Add Issue Navigation Link to create a new entry or click Edit to edit an existing entry. In the dialog that opens, specify the following regular expressions:
the pattern for issue IDs in commit messages
the replacement expression that defines the URL to access the corresponding referenced issue
Example
The example below shows how RubyMine applies the mentioned rules to detect a reference to an issue in a commit message and compose a link to it in the issue tracking system.
Issue ID | A regular expression that defines the format for issue references in commit messages. [A-Z]+\-\d+ This regular expression matches all character strings that consist of two substrings separated by an n-dash character:
|
Issue link | A combination of the URL address of your issue tracking system and a regular expression that identifies issues in it. http://<mytracker>/issue/$0 Here |
Matching issue ID | RubyMine detects the following reference to an issue in the commit message of interest: MYPROJECT-110 |
Composed issue link | In accordance with the above issue navigation pattern, the detected matching reference is added to the URL of the tracker as is, so the link to the referenced issue is composed as follows: http://mytracker/issue/MYPROJECT-110 |