You can integrate a project in YouTrack with VCS repositories that are hosted on bitbucket.org.
A Bitbucket integration enables the following features in YouTrack:
Apply commands to YouTrack issues in commit messages. For more information, see Apply Commands in VCS Commits.
Track commits that are related to specific issues in the activity stream for each issue. For more information, see Commits.
Display the status of pull (merge) requests directly in the activity stream of any issue that is referenced in the title or description of the pull request. For details, see Pull Requests.
Add links to YouTrack issues in commit messages. For more information, see Link Issues in VCS Commits.
YouTrack is accessible to inbound connections. Specifically, you need to make sure that your network doesn't block connections between your VCS server and YouTrack.
The account that you use to connect to Bitbucket is either the owner of the repository or has admin-level access to the repository. This is the user account whose username and password are used for authentication. If you use an account that does not have admin-level access to the repository, you encounter an
unable to perform operationerror.
Connect to a Bitbucket Repository
The first step is to establish a connection between a project and YouTrack and a repository in Bitbucket. To connect with Bitbucket, you need to enter the credentials for your Bitbucket account. This authentication grants YouTrack access to the repository based on the access that is granted to your account in Bitbucket.
The form that you use to set up the integration accepts either the password for your Bitbucket account or an app password. We strongly recommend that you use an app password.
To connect to a Bitbucket repository:
Open thepage in YouTrack.
Click the New VCS Integration button.
The New VCS Integration dialog opens.
From the Main YouTrack project list, select the name of the primary project that you want to integrate with the VCS repository. You can add integrations with additional YouTrack projects after you have set up the connection to the repository.
For the Server type, select Bitbucket.
Paste the URL that points to your Bitbucket repository into the Repository URL input field.
Enter the username and password for the Bitbucket account.
The Password input field accepts either the password for your Bitbucket account or an app password.
To create an app password, click the Create an app password link to access your account in Bitbucket. Your app password for this integration requires the following permissions:
Category Permission Repositories Read, Admin Pull requests Read Issues Read Webhooks Read and write
Click the Save button.
Your YouTrack project is integrated with the selected repository in Bitbucket.
Commits from the Bitbucket repository that reference an issue in the project are displayed in the activity stream of the referenced issue.
The sidebar displays additional settings for configuring the VCS integration.
To learn more about these settings, see Integration Settings.
By default, the VCS integration processes changes that are committed to the repository by any user in any branch. Any user who has access to the issue in YouTrack can view these changes in the issue activity stream.
If you only want to process changes by specific users in designated branches or restrict the visibility of VCS changes in YouTrack, you can customize the integration settings. Use following settings to customize the integration:
Displays the path to the repository in the integrated version control system.
If needed, you can edit the location of the repository after you have set up the integration. For instructions, see Edit Repository Settings.
|Main YouTrack project||Sets the primary project in which the VCS integration is active.|
|Additional projects||Integrates the linked repository with one or more additional projects.|
|Committers||Restricts the ability to update issues with commands in commit messages to members of the specified group. VCS changes from users who are not members of the selected group are still attached to related issues, but any commands that are specified in their commits are ignored.|
|Processing scheme for VCS changes|
Select the way how YouTrack processes VCS changes with commit message that references ID of an issue. The following options are supported:
Stores the names of the branches that you want to monitor for changes. For Bitbucket integrations, use the short name instead of the fully qualified name of the branch.
If the address that you entered as the Repository URL when you connected to Bitbucket points to a specific branch, this branch is automatically added to the list of monitored branches when you set up the connection.
|Parse commits for issue comments|
When enabled, specific segments of commit message text are copied to issues as comments. When you copy parts of the commit message to the issue as comments, you can trigger @mention notifications and expose information to users who don't have access to VCS changes.
This setting does not affect how commit messages are shown in VCS changes. The entire commit message, including commands and issue comments, is always shown as part of the VCS change record in the activity stream.
You should only enable this option when:
To learn more about how YouTrack processes commit messages, see Apply Commands in VCS Commits.
|VCS changes visibility||Restricts the visibility of VCS changes to one or more groups of users in YouTrack. When unrestricted, the list of VCS changes is visible to any user who has permission to read issues in the project.|
When you select an integrated version control system in the list, the following actions are available in the toolbar:
|Disable||Shuts off the connection between the integrated project and the VCS repository. The configuration is not changed and can be enabled at any time.|
|Edit||Opens the integration settings dialog in the sidebar for the selected project and repository.|
Removes the settings for the integrated project from YouTrack.
This action also removes all VCS changes that were added to issues for commits in the linked repository.
While the action itself cannot be undone, you can use the Import action to restore VCS changes that were removed accidentally.
|Import commits and open pull requests|
Checks the commit history in the linked repository and adds VCS changes to issues that are referenced in commit messages. This option is only available for integrations that are currently enabled.
You can use this action to restore VCS changes that were removed when an integration was accidentally deleted or to migrate links to issues in a new project.
Condition — References to issues in VCS commits are not shown as VCS changes in YouTrack.
|The webhooks in the integrated VCS don't exist, are disabled, or are otherwise malformed.|
Check the webhooks in the settings for your VCS repository. Make sure that the webhooks exist and that they are enabled.
If you suspect that there is a problem with a webhook, delete or disable it in the settings for your VCS and set up a new VCS integration in YouTrack.
Condition — Commands that are specified in VCS commits are not applied to issues in YouTrack.
|The users who commit changes to the repository are not members of the Committers group in the integration settings.||Either add the committers to the specified group in YouTrack or modify the selection in the integration settings.|
|The users who commit changes to the repository do not have permission to update issues in the connected project.||Either add these users to the project team or grant them a role in the project that includes the Read Issue and Update Issue permissions.|
|YouTrack can't find a user account that matches the author of the commit message.|
The user must either use the same email address for their accounts in both YouTrack and Bitbucket or add the value that is stored as the nickname in their Bitbucket profile to the list of VCS user names in their Hub accounts.
For more information, see Match Change Authors and YouTrack Users.
Condition — YouTrack returns the error
unable to perform operation when you try to establish a connection with a Bitbucket repository. Follow the instructions below to resolve the problem.
|The username and password that are used for authentication with Bitbucket belong to a user who is not the owner of the repository and does not have admin-level access. This integration uses webhooks, which can only be created by the owner of the repository and other users who are granted admin access.|
Access the User and group access settings for your repository and grant admin access to the user you are using to authenticate with Bitbucket. You can also grant admin access to a group where this user is a member.
Alternatively, use the username and password of an account that is already granted admin access in the repository.