GitHub, GitLab and Bitbucket
Link pull requests, commits and CI runs to issues.
Settings → Source control
Connects this organization to GitHub, GitLab or Bitbucket. Once connected, go to each project's own Settings to map it to specific repos — that mapping is what makes pull requests reference and auto-close issues, and what feeds CI runs and deployments into change risk. Owner/Admin only.
GitHub
- Connects through a platform-managed GitHub App. A platform admin registers it once for the whole deployment; if Connect fails immediately, that step hasn't been done yet.
- Connect redirects to GitHub to pick which account/org and repos the App can access. No password or token is stored here.
- Disconnecting removes the connection here only; the App installation stays on GitHub until removed from github.com/settings/installations.
GitLab and Bitbucket
- Add webhook gives you a URL and a secret. Paste both into the GitLab group/project or Bitbucket repository webhook settings — the dialog lists exactly which events to tick.
- The secret is shown once and stored encrypted. Lost it? New secret issues another; the old one stops working at once.
- Works with gitlab.com and self-managed GitLab, as long as GitLab can reach this app's address.
- Repos appear in a project's repo picker once their first delivery arrives — send a test from the provider to make one appear straight away.
- Bitbucket Cloud sends no deployment events, so deployments come from GitHub and GitLab only.
Next step: map a project to a repo
Connecting only authorizes access at the org level — it doesn't link anything to issues by itself. Open the project (its own Settings → Source control) and pick which repo(s) belong to it. A project can map to more than one repo.
How a pull request links to an issue
Mention the issue's key — e.g. PROJ-123 — in the pull (or merge) request's title, description, or branch name (a commit message alone isn't read). Any of these work:
- Title: "PROJ-123: fix the login redirect loop"
- Description: "Fixes PROJ-123" anywhere in the body
- Branch name: fix/PROJ-123-login-redirect
When it is merged, the linked issue moves to its workflow's final status (e.g. "Done") — only if the workflow allows that transition from where the issue sits. If it doesn't, the issue is left alone but still gets a comment noting the merge. A pull request naming several keys updates every one of them. Approvals are recorded as reviews.