You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: Integrate Plane with GitLab to synchronize issues and pull requests. Connect repositories to projects for bidirectional updates and seamless workflows.
4
+
description: Integrate Plane with GitLab and Self-managed GitLab to automate pull requests and work item state mapping. Connect repositories to projects for bidirectional updates and seamless workflows.
Currently, Plane integrates only with GitLab Cloud. Support for self-managed GitLab instances is not available yet, but we’re working on adding it soon.
16
-
:::
17
-
18
16
Integrating GitLab with Plane allows you to sync your development workflow seamlessly by linking GitLab merge requests with Plane work items. This connection enables automated updates and enhances collaboration between developers and project managers.
19
17
18
+
Plane supports integration with:
19
+
20
+
-**GitLab.com**
21
+
The standard cloud-hosted GitLab service
22
+
23
+
-**GitLab Self-managed**
24
+
Self-hosted GitLab instances for organizations with specific compliance or security requirements
25
+
20
26
This guide walks you through the steps to connect your GitLab account, link GitLab projects to Plane, and configure pull request automation.
21
27
22
28
## Set up GitLab integration
@@ -33,26 +39,56 @@ To get started, you'll need to connect your GitLab account, organization, and re
33
39
34
40
### Connect GitLab organization
35
41
36
-
Link your GitLab organization to your Plane workspace to start syncing repositories. This step is crucial for enabling the full range of GitLab-Plane integrations.
42
+
Link your GitLab organization to your Plane workspace to start syncing repositories. This step is crucial for enabling the full range of GitLab-Plane integration.
If you're running a self-hosted instance of Plane, you'll need to set up a few extra configurations to get GitLab integration working. Check out the [setup guide](https://developers.plane.so/self-hosting/govern/integrations/gitlab?edition=gitlab-cloud) first before diving into the steps on this page.
48
+
:::
49
+
50
+
1. Navigate to Workspace **Settings** in Plane.
37
51
38
-
1. Navigate to Workspace**Settings**in Plane.
52
+
2. Go to the**Integrations**tab.
39
53
40
-
2. Go to the **Integrations**tab.
54
+
3. Locate the **GitLab**integration section.
41
55
42
-
3. Locate the **GitLab**integration section.
56
+
4. Click **Connect**to authenticate your GitLab account and initiate the connection.
43
57
44
-
4. Click **Connect** to authenticate your GitLab account and initiate the connection.
Before you can integrate with GitLab Self-managed, you must first set up the necessary configurations in your GitLab instance. This is required for both Plane Cloud and self-hosted users.
69
+
70
+
Follow this [setup guide](https://developers.plane.so/self-hosting/govern/integrations/gitlab?edition=gitlab-self-managed) first before diving into the steps on this section.
71
+
:::
72
+
73
+
1. Navigate to [Workspace settings](/core-concepts/workspaces/overview#access-workspace-settings) in Plane.
74
+
2. On the right pane, select **Integrations**.
75
+
3. Find the **GitLab Self-managed** integration and click **Configure**.
76
+
4. In the **Connect Organization** section, click **Connect**.
6. On the GitLab app installation page, choose the organization you want to connect.
83
+
7. Select whether you want to sync all repositories or pick specific ones.
84
+
8. Click **Install** to finalize the connection.
85
+
9. After authorization, you’ll be redirected back to Plane, where your GitLab organization will appear as connected.
86
+
</TabItem>
87
+
</Tabs>
53
88
54
89
At this stage, your GitLab account is linked to Plane, but you still need to connect specific GitLab projects to Plane projects.
55
90
91
+
56
92
### Connect GitLab project
57
93
58
94
Connecting a GitLab project allows Plane to receive updates from that project via webhooks. These webhooks are essential for GitLab merge request automation.
@@ -81,31 +117,43 @@ After linking a GitLab project, the next step is to associate it with a Plane pr
81
117
82
118
3. Once configured, you will see the project connection appear in the **Plane Project Connections** section.
83
119
84
-
## Sync pull requests
120
+
## Configure PR state automation
121
+
122
+
Pull requests (PRs) are also synchronized with Plane to ensure work item tracking remains accurate throughout the development lifecycle.
123
+
124
+
To automate pull request state changes with Plane work items:
125
+
126
+
1. Reference Plane work items in your GitLab PR title or description using the appropriate format. See [Reference formats](#reference-formats) below.
127
+
2. Automatic state updates will move the work item state in Plane based on the GitLab PR state defined in your mapping.
85
128
86
-
Pull requests (PRs) are also synchronized with Plane to ensure issue tracking remains accurate throughout the development lifecycle.
129
+
#### Reference formats
130
+
There are two ways to reference Plane work items in your GitLab PRs:
87
131
88
-
####Closing references and auto-updates
132
+
##### With brackets [WEB-344] - State automation
89
133
90
-
When a pull request includes closing references to GitLab issues (e.g., `closes #14`), any linked Plane work items will automatically update with the PR link. If the PR is merged or closed, the Plane work item state updates based on the configured workflow in [Pull Request Automation](/integrations/gitlab#connect-plane-project).
134
+
- Links the work item to the PR
135
+
- Adds a comment from Plane App showing linked work items
136
+
- Automatically updates the work item state based on PR state changes (as configured in your PR state mapping)
91
137
92
-
####Magic words for issue references
138
+
##### Without brackets WEB-344 - Link only
93
139
94
-
You can use specific keywords in GitLab pull requests to manage how Plane work items are updated.
140
+
- Links the work item to the PR as a reference
141
+
- Adds a comment from Plane App showing referenced work items
142
+
- Does not trigger automatic state updates
95
143
96
-
-**Closing references**
97
-
These keywords close linked issues when the PR is merged or closed.
- WEB-344 will be fully automated (state changes with PR state)
152
+
- WEB-345 will be linked as a reference only (no state automation)
105
153
106
-
####PR lifecycle mapping
154
+
### PR lifecycle mapping
107
155
108
-
The lifecycle of a pull request can be [mapped](/integrations/gitlab#connect-plane-project) to workflow states in Plane. The following PR states are available for mapping:
156
+
The lifecycle of a pull request can be mapped to workflow states in Plane. The following PR states are available for mapping:
109
157
110
158
- A draft PR is created.
111
159
- A PR is opened.
@@ -114,6 +162,6 @@ The lifecycle of a pull request can be [mapped](/integrations/gitlab#connect-pla
114
162
- The PR is successfully merged.
115
163
- The PR is closed without merging.
116
164
117
-
####Issue backlinks in pull requests
165
+
### Issue backlinks in pull requests
118
166
119
-
When a PR references Plane work items (using closing or non-closing reference keywords), Plane will post a confirmation comment on the pull request, ensuring visibility into which issues are linked.
167
+
When a PR references Plane work items, Plane will post a confirmation comment on the pull request, ensuring visibility into which issues are linked.
0 commit comments