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
@@ -108,46 +108,86 @@ If you don’t have admin access, you can still connect your personal GitHub acc
108
108
:::
109
109
5. Once connected, your GitHub account will be listed in Plane.
110
110
111
-
### Add repository mappings
111
+
##Sync issues
112
112
113
-
Once GitHub is connected to Plane, workspace admins can map GitHub repositories to Plane projects. This ensures issues and pull requests sync correctly.
113
+
With the GitHub integration set up, you can sync issues between Plane and GitHub at the project level. This ensures GitHub issues and Plane work items stay synchronized within your configured repositories and projects.
114
+
115
+
### Add project work item sync
116
+
Once GitHub is connected to Plane, workspace admins can link GitHub repositories with Plane projects.
117
+
118
+
1. Navigate to the **Project Issue Sync** section under **Integrations**.
119
+
2. Click the (+) button to create a new sync mapping.
120
+

121
+
3. In the modal that appears, configure the following:
122
+
1.**Plane project**
123
+
Select the Plane project you want to sync with.
124
+
2.**GitHub repository**
125
+
Choose the GitHub repository to connect.
126
+
3.**Project issue sync**
127
+
Map GitHub issue states to Plane states:
128
+
- Issue Open → Select a Plane state (e.g., Todo)
129
+
- Issue Closed → Select a Plane state (e.g., Done)
130
+
4.**Select issue sync direction**
131
+
Choose how issues should sync:
132
+
- Unidirectional → Sync issues from GitHub to Plane only.
133
+
:::warning
134
+
This will overwrite Plane work item content with GitHub issue data.
135
+
:::
136
+
- Bidirectional → Sync issues both ways between GitHub and Plane.
2. A new issue will automatically be created in the linked GitHub repository.
164
+

165
+
3. The GitHub issue will be linked back to the Plane work item.
166
+
4. Future updates will sync according to your configured sync direction (unidirectional or bidirectional).
127
167
128
-
##Sync issues
168
+
### How issue syncing works
129
169
130
-
With the GitHub integration setup, you can start syncing issues between Plane and GitHub. The synchronization is bi-directional and label-based, so issues are updated automatically on both platforms when certain labels are applied.
170
+
#### State synchronization
131
171
132
-
### Github -> Plane
172
+
- When a GitHub issue is opened or closed, the corresponding Plane work item automatically moves to the mapped state.
173
+
- With bidirectional sync enabled, state changes in Plane work items will also update the GitHub issue status (open/closed).
133
174
134
-
1. Add the `Plane` label to an issue in GitHub to create and sync the issue in Plane.

147
-
3. The GitHub issue is also linked back to Plane.
180
+
#### Continuous updates
181
+
182
+
- All synced properties (title, description, assignees, labels, comments, etc.) update automatically based on your sync direction settings.
183
+
- See [What gets synced?](#what-gets-synced) for detailed information on property-level sync behavior
148
184
149
185
### What gets synced?
150
186
187
+
:::warning[important]
188
+
By default, syncing is unidirectional (GitHub → Plane only). Data from GitHub issues will overwrite corresponding data in Plane. Changes made in Plane will not sync back to GitHub unless you enable Bidirectional sync in your integration settings.
189
+
:::
190
+
151
191
Here’s what syncs automatically between Plane and GitHub:
@@ -161,29 +201,61 @@ Here’s what syncs automatically between Plane and GitHub:
161
201
| Mentions | Both ways | Mentioned users sync if they are mapped; otherwise, a GitHub profile link is included. |
162
202
| Issue links | GitHub → Plane | Any issue references in GitHub descriptions or comments will be displayed in Plane with a direct link to the issue including the repository name and owner. |
163
203
164
-
## Sync pull requests
204
+
## Configure PR state automation
205
+
206
+
Pull requests (PRs) are also synchronized with Plane to ensure work item tracking remains accurate throughout the development lifecycle.
207
+
208
+
### Add pull request mapping
209
+
210
+
Once GitHub is connected to Plane, workspace admins can configure pull request state mapping for Plane projects. This ensures PR states automatically sync with work item states in the mapped project.
211
+
212
+
1. Navigate to the **Pull request state mapping** section.
3. In the modal that appears, configure the following:
216
+
-**Plane project**
217
+
Select the Plane project where PR state automation should be enabled.
218
+
-**Pull request automation**
219
+
Map GitHub pull request states to Plane work item states
220
+

221
+
4. Click **Save**.
222
+
223
+
All configured pull request state mappings will appear in a list where you can edit or remove them as needed.
224
+
225
+
### Set up PR automation
226
+
227
+
To automate pull request state changes with Plane work items:
228
+
229
+
1. Configure PR state mapping for your Plane project to enable PR state automation. See [Add pull request mapping](#add-pull-request-mapping).
230
+
2. Reference Plane work items in your GitHub PR title or description using the appropriate format. See [Reference formats](#reference-formats) below.
231
+
3. Automatic state updates will move the work item state in Plane based on the GitHub PR state defined in your mapping.
165
232
166
-
Pull requests (PRs) are also synchronized with Plane to ensure issue tracking remains accurate throughout the development lifecycle.
233
+
#### Reference formats
234
+
There are two ways to reference Plane work items in your GitHub PRs:
167
235
168
-
####Closing references and auto-updates
236
+
##### With brackets [WEB-344] - State automation
169
237
170
-
When a pull request includes closing references to GitHub 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 [Repository mappings](/integrations/github#add-repository-mappings).
238
+
- Links the work item to the PR
239
+
- Adds a comment from Plane App showing linked work items
240
+
- Automatically updates the work item state based on PR state changes (as configured in your PR state mapping)
171
241
172
-
####Magic words for issue references
242
+
##### Without brackets WEB-344 - Link only
173
243
174
-
You can use specific keywords in GitHub pull requests to manage how Plane work items are updated.
244
+
- Links the work item to the PR as a reference
245
+
- Adds a comment from Plane App showing referenced work items
246
+
- Does not trigger automatic state updates
175
247
176
-
-**Closing references**
177
-
These keywords close linked issues when the PR is merged or closed.
- WEB-344 will be fully automated (state changes with PR state)
256
+
- WEB-345 will be linked as a reference only (no state automation)
185
257
186
-
####PR lifecycle mapping
258
+
### PR lifecycle mapping
187
259
188
260
The lifecycle of a pull request can be [mapped](/integrations/github#add-repository-mappings) to workflow states in Plane. The following PR states are available for mapping:
189
261
@@ -194,9 +266,9 @@ The lifecycle of a pull request can be [mapped](/integrations/github#add-reposit
194
266
- The PR is successfully merged.
195
267
- The PR is closed without merging.
196
268
197
-
####Issue backlinks in pull requests
269
+
### Issue backlinks in pull requests
198
270
199
-
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.
271
+
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