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
|`--name`|`sync`, `complete`, `update`| Custom release name. For `sync`, the value is applied to the targeted release — both newly created releases and existing ones get the provided name. For `complete` and `update`, sets the name on the targeted release. |
155
-
|`--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
-
|`--stage`|`update`| Target deployment stage (required for `update`) |
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. |
159
-
|`--base-ref`|`sync`| Override the scan base. Exclusive: scans `<base-ref>..HEAD`. |
160
-
|`--json`|`sync`, `complete`, `update`| Output result as JSON on stdout. Logs are emitted as JSON Lines (one object per line) on stderr. |
161
-
|`--quiet`|`sync`, `complete`, `update`| Suppress info-level output. Warnings and errors are still printed. |
162
-
|`--verbose`|`sync`, `complete`, `update`| Print detailed progress including debug diagnostics |
163
-
|`--timeout`|`sync`, `complete`, `update`| Max duration in seconds before aborting (default: 60) |
|`--name`|`sync`, `complete`, `update`| Custom release name. For `sync`, the value is applied to the targeted release — both newly created releases and existing ones get the provided name. For `complete` and `update`, sets the name on the targeted release. |
155
+
|`--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
+
|`--stage`|`update`| Target deployment stage (required for `update`) |
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. |
159
+
|`--document`|`sync`, `complete`, `update`| Attach a document. `--document "Title=...markdown..."`; repeat for multiple docs. Existing documents with the same title on the release are updated. |
160
+
|`--document-file`|`sync`, `complete`, `update`| Same as `--document` but reads the body from a file: `--document-file "Title=path/to/file.md"`. Use `-` to read from stdin. |
161
+
|`--release-notes`|`sync`, `complete`, `update`| Set the release notes for this release. Inline markdown. If combined with `--release-notes-file`, the last flag wins. |
162
+
|`--release-notes-file`|`sync`, `complete`, `update`| Same as `--release-notes` but reads from a file. Use `-` for stdin. |
163
+
|`--base-ref`|`sync`| Override the scan base. Exclusive: scans `<base-ref>..HEAD`. |
164
+
|`--json`|`sync`, `complete`, `update`| Output result as JSON on stdout. Logs are emitted as JSON Lines (one object per line) on stderr. |
165
+
|`--quiet`|`sync`, `complete`, `update`| Suppress info-level output. Warnings and errors are still printed. |
166
+
|`--verbose`|`sync`, `complete`, `update`| Print detailed progress including debug diagnostics |
167
+
|`--timeout`|`sync`, `complete`, `update`| Max duration in seconds before aborting (default: 60) |
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
237
238
+
### Documents and release notes
239
+
240
+
Attach release notes and supporting documents to a release. Each release has at most one set of release notes (last `--release-notes` / `--release-notes-file` wins). Documents are repeatable and keyed by title — re-syncing with the same title updates content in place.
# Inline (single-line content only — see "Multi-line content" below)
256
+
linear-release sync --document "Deploy log=Deployed to production at $(date -u +%FT%TZ)"
257
+
```
258
+
259
+
> **Multi-line content**: use `--document-file` / `--release-notes-file`. Inline `\n` inside `"…"` is passed verbatim by the shell — same gotcha as `gh release create --notes`, `git commit -m`, and `helm --set`. For inline multi-line, use a real newline in the quotes or [`$'…\n…'`](https://www.gnu.org/software/bash/manual/html_node/ANSI_002dC-Quoting.html).
260
+
234
261
## How It Works
235
262
236
263
1.**Fetches the latest release** from your Linear pipeline to determine the commit range
0 commit comments