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
|`--release-version`|`sync`, `complete`, `update`| Release version identifier. For `sync`, defaults to short commit hash. For `complete` and `update`, selects an existing release with that version (errors if none exists); does not change a release's version. If omitted, targets the most recent started release. |
156
156
|`--stage`|`update`| Target deployment stage (required for `update`) |
157
157
|`--include-paths`|`sync`| Filter commits by changed file paths |
158
+
|`--link`|`sync`, `complete`, `update`| Add a link to the targeted release. Use `--link "https://example.com"` or `--link "Label=https://example.com"`; repeat the flag to add multiple links. |
158
159
|`--base-ref`|`sync`| Override the scan base. Exclusive: scans `<base-ref>..HEAD`. |
159
160
|`--json`|`sync`, `complete`, `update`| Output result as JSON on stdout. Logs are emitted as JSON Lines (one object per line) on stderr. |
160
161
|`--quiet`|`sync`, `complete`, `update`| Suppress info-level output. Warnings and errors are still printed. |
@@ -210,13 +211,33 @@ Patterns use [Git pathspec](https://git-scm.com/docs/gitglossary#Documentation/g
210
211
211
212
Path patterns can also be configured in your pipeline settings in Linear. If both are set, the CLI `--include-paths` option takes precedence.
212
213
214
+
### Release Links
215
+
216
+
`--link` attaches external URLs to the release — a GitHub release page, a CI run, a deployment dashboard.
217
+
218
+
```bash
219
+
# Bare URL — Linear derives the label ("GitHub" here)
Each value is either an absolute URL or `Label=URL`. Both `--link "Label=..."` and `--link="Label=..."` are accepted. `http(s)` is the typical scheme; the server rejects unsafe ones like `javascript:` or `data:`.
233
+
213
234
## How It Works
214
235
215
236
1.**Fetches the latest release** from your Linear pipeline to determine the commit range
216
237
2.**Scans commits** between the commit from the last release and the current commit
217
238
3.**Extracts issue identifiers** from branch names and commit messages (e.g., `feat/ENG-123-add-feature`)
218
239
4.**Detects pull/merge request numbers** from commit messages — GitHub `Title (#42)` / `Merge pull request #42`, and GitLab `See merge request <group>/<project>!42` trailers (emitted whenever a merge commit is created)
219
-
5.**Syncs data to Linear** that adds issues to a newly created completed release (continuous pipelines) or the currently in-progress release (scheduled pipelines). PR/MR numbers are sent alongside the repository info, and Linear resolves them back to any issues linked to those PRs/MRs — so issues attached only via a PR/MR (not mentioned in a commit message or branch name) are still picked up.
240
+
5.**Syncs data to Linear** that adds issues and provided links to a newly created completed release (continuous pipelines) or the currently in-progress release (scheduled pipelines). PR/MR numbers are sent alongside the repository info, and Linear resolves them back to any issues linked to those PRs/MRs — so issues attached only via a PR/MR (not mentioned in a commit message or branch name) are still picked up.
220
241
221
242
> [!NOTE]
222
243
> **First sync**: when no prior release exists for the pipeline, only the current commit is scanned (there's no previous SHA to bound the range from).
0 commit comments