Skip to content

Commit 3211ff3

Browse files
committed
Updated the GitHub integrations page
1 parent e872f14 commit 3211ff3

File tree

1 file changed

+90
-43
lines changed

1 file changed

+90
-43
lines changed

docs/integrations/github.mdx

Lines changed: 90 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -108,46 +108,61 @@ If you don’t have admin access, you can still connect your personal GitHub acc
108108
:::
109109
5. Once connected, your GitHub account will be listed in Plane.
110110

111-
### Add repository mappings
111+
## Sync issues
112112

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.
114114

115-
![Repository mapping](https://media.docs.plane.so/integrations/github/repository-mapping.webp#center)
115+
### Add project work item sync
116+
Once GitHub is connected to Plane, workspace admins can link GitHub repositories with Plane projects.
116117

117-
1. Go to the **Repository Mapping** section under **Integrations**.
118-
2. Click **Add** to create a new mapping.
119-
![Sync repo and project](https://media.docs.plane.so/integrations/github/sync-repo-and-project.webp#center)
120-
3. In the modal that appears, select:
121-
- The GitHub repository you want to sync.
122-
- The Plane project to map it to.
123-
- The Plane states to map the state of the pull requests.
124-
4. Click **Continue**.
118+
1. Navigate to the **Project Issue Sync** section under **Integrations**.
119+
2. Click the (+) button to create a new sync mapping.
120+
![Sync project to GitHub](https://media.docs.plane.so/integrations/github/sync-project-github.webp#center)
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.
125137

126-
All linked repositories will appear in a list, where you can edit or remove them as needed.
138+
![Sync direction](https://media.docs.plane.so/integrations/github/sync-direction.webp#center)
139+
5. Click **Start Sync**.
127140

128-
## Sync issues
141+
All configured project issue syncs will appear in a list where you can edit or remove them as needed.
142+
143+
### How issue syncing works
144+
145+
#### State synchronization
129146

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.
147+
- When a GitHub issue is opened or closed, the corresponding Plane work item automatically moves to the mapped state.
148+
- With bidirectional sync enabled, state changes in Plane work items will also update the GitHub issue status (open/closed).
131149

132-
### Github -> Plane
150+
#### Creating synced issues
133151

134-
1. Add the `Plane` label to an issue in GitHub to create and sync the issue in Plane.
135-
![Add Plane label](https://media.docs.plane.so/integrations/github/add-plane-label.webp#center)
136-
2. Plane posts a link back to the GitHub issue, confirming the connection.
137-
![Synced issue from GitHub](https://media.docs.plane.so/integrations/github/synced-issue-from-github.webp#center)
138-
3. A new work item is created in Plane with a link to the GitHub issue.
139-
![Creates issue in Plane](https://media.docs.plane.so/integrations/github/creates-plane-issue.webp#center)
152+
- Issues created in GitHub (within a synced repository) are automatically created in the linked Plane project.
153+
- With bidirectional sync enabled, work items created in Plane (with the sync configured) are also created in GitHub.
140154

141-
### Plane -> GitHub
155+
#### Continuous updates
142156

143-
1. Add the `GitHub` label to a work item in Plane to sync it to GitHub.
144-
![Add GitHub label](https://media.docs.plane.so/integrations/github/add-github-label.webp#center)
145-
2. A new issue is created in GitHub.
146-
![Creates issue in GitHub](https://media.docs.plane.so/integrations/github/create-github-issue.webp#center)
147-
3. The GitHub issue is also linked back to Plane.
157+
- All synced properties (title, description, assignees, labels, comments, etc.) update automatically based on your sync direction settings.
158+
- See [What gets synced?](#what-gets-synced) for detailed information on property-level sync behavior
148159

149160
### What gets synced?
150161

162+
:::warning[important]
163+
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.
164+
:::
165+
151166
Here’s what syncs automatically between Plane and GitHub:
152167

153168
| Property   | Sync direction   | Notes |
@@ -163,27 +178,59 @@ Here’s what syncs automatically between Plane and GitHub:
163178

164179
## Sync pull requests
165180

166-
Pull requests (PRs) are also synchronized with Plane to ensure issue tracking remains accurate throughout the development lifecycle.
181+
Pull requests (PRs) are also synchronized with Plane to ensure work item tracking remains accurate throughout the development lifecycle.
182+
183+
### Add pull request mapping
184+
185+
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.
186+
187+
1. Navigate to the **Pull request state mapping** section.
188+
2. Click the (+) button to create a new mapping.
189+
![Repository mapping](https://media.docs.plane.so/integrations/github/pr-state-mapping.webp#center)
190+
3. In the modal that appears, configure the following:
191+
- **Plane project**
192+
Select the Plane project where PR state automation should be enabled.
193+
- **Pull request automation**
194+
Map GitHub pull request states to Plane work item states
195+
![Sync repo and project](https://media.docs.plane.so/integrations/github/pr-automation.webp#center)
196+
4. Click **Save**.
197+
198+
All configured pull request state mappings will appear in a list where you can edit or remove them as needed.
199+
200+
### Set up PR automation
201+
202+
To automate pull request state changes with Plane work items:
203+
204+
1. Configure PR state mapping for your Plane project to enable PR state automation. See [Add pull request mapping](#add-pull-request-mapping).
205+
2. Reference Plane work items in your GitHub PR title or description using the appropriate format. See [Reference formats](#reference-formats) below.
206+
3. Automatic state updates will move the work item state in Plane based on the GitHub PR state defined in your mapping.
207+
208+
#### Reference formats
209+
There are two ways to reference Plane work items in your GitHub PRs:
167210

168-
#### Closing references and auto-updates
211+
##### With brackets [WEB-344] - State automation
169212

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).
213+
- Links the work item to the PR
214+
- Adds a comment from Plane App showing linked work items
215+
- Automatically updates the work item state based on PR state changes (as configured in your PR state mapping)
171216

172-
#### Magic words for issue references
217+
##### Without brackets WEB-344 - Link only
173218

174-
You can use specific keywords in GitHub pull requests to manage how Plane work items are updated.
219+
- Links the work item to the PR as a reference
220+
- Adds a comment from Plane App showing referenced work items
221+
- Does not trigger automatic state updates
175222

176-
- **Closing references**
177-
These keywords close linked issues when the PR is merged or closed.
178-
**Keywords**
179-
`close`, `closes`, `closed`, `closing`, `fix`, `fixes`, `fixed`, `resolve`, `resolves`, `resolved`, `complete`, `completes`, `completed`.
223+
*Example*
224+
```bash
225+
PR Title: [WEB-344] Add user authentication feature
226+
PR Description: Implements login functionality for WEB-345
227+
```
180228

181-
- **Non-closing references**
182-
These keywords maintain the state mappings of linked issues but don’t close them.
183-
**Keywords**
184-
`ref`, `references`, `reference to`, `part of`, `related to`.
229+
In this example:
230+
- WEB-344 will be fully automated (state changes with PR state)
231+
- WEB-345 will be linked as a reference only (no state automation)
185232

186-
#### PR lifecycle mapping
233+
### PR lifecycle mapping
187234

188235
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:
189236

@@ -194,9 +241,9 @@ The lifecycle of a pull request can be [mapped](/integrations/github#add-reposit
194241
- The PR is successfully merged.
195242
- The PR is closed without merging.
196243

197-
#### Issue backlinks in pull requests
244+
### Issue backlinks in pull requests
198245

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.
246+
When a PR references Plane work items, Plane will post a confirmation comment on the pull request, ensuring visibility into which issues are linked.
200247

201248
---
202249

0 commit comments

Comments
 (0)