Skip to content

jk manual

Adjust one command's execution

Control working-copy updates, historical execution, and immutable protection on a pending mutation.

From a rebase, squash, or restore preview, press o to open Run Options. Begin with a preview whose repository and revision operands you have already checked. Options apply only to this pending command. They do not change a repository setting or the defaults for the next command.

Change and apply an option

  1. Move through the options with j/k or Up/Down.
  2. Press Enter on an option to toggle it or edit its value.
  3. Press a to apply the draft to the command preview.
  4. Read the updated exact command and warnings.
  5. Press Enter in that preview to execute, or Esc to discard the pending command.

Applying options does not run the command. Esc inside the drawer discards the draft, including while editing an operation ID. Cancelling the outer preview discards all its options. Page Up/Down scroll long text while keeping the decision controls available.

The drawer shows the repository chosen when you selected the revisions. You cannot switch it here; changing the repository would change the meaning of the selected objects.

Decide whether to update working-copy files

The default working-copy policy lets jj snapshot current files and update them after a command that changes the working copy. Choose Ignore to skip both snapshotting and updating those files.

Ignore is useful when you deliberately want the command to work with already recorded repository content while leaving this directory untouched. It means unsnapshotted file edits are excluded from the command’s view of the working copy. After execution, inspect the resulting graph and the on-disk files separately; they may intentionally describe different states.

The immediate graph refresh after an ignored-working-copy command also skips snapshotting. Later ordinary refreshes return to normal jj behavior, so pressing r can snapshot those files again. Command History retains the actual option and resulting diagnostic output.

Run rebase or squash at a historical operation

Copy a specific operation ID from Operation Log. In the drawer’s operation field, enter at least 12 hexadecimal digits. Press Enter to finish editing. Ctrl-u clears the field to return to latest.

Historical execution loads that repository state and ignores working-copy files. It can create concurrent history. The full commit operands chosen before opening the drawer remain fixed; an operation ID does not re-resolve them into different revisions. jj fails if those commits are unavailable in the chosen state.

Apply the option, then read the historical-execution warning and exact command before confirming. After success, jk refreshes the latest graph without snapshotting. Inspect the resulting operation and graph before another mutation. Use operation recovery if the historical command produced an unintended result.

Restore keeps its latest-operation context. Its native destination is @; permitting a historical operation would change which working-copy change that expression denotes. The drawer therefore does not offer a historical restore destination.

Allow a deliberate immutable rewrite

Immutable protection is enabled by default. Leave it enabled for ordinary mutable work. If a rewrite of protected history is intentional, toggle the immutable option, apply it, and inspect the new warning and --ignore-immutable flag in the command preview.

The override changes jj’s protection check for this command. It does not select different operands, remove content conflicts, or make a broader rebase safe for other workspaces. Verify all affected changes afterward and keep the operation record available for recovery.

If the command fails despite an override, inspect jj’s diagnostic in C; do not assume every rejection was caused by immutable protection.

Know which commands the drawer covers

Run Options is available for rebase, squash, and restore previews only. It does not configure New, Edit, Describe, Abandon, workspace lifecycle commands, bookmark mutations, remote commands, captured command mode, or external tools.

Repository switching, config overlays, config files, output policy, and detached operation creation are not editable here. Existing configuration overlays and output settings are preserved. Use an explicit jj command when a different supported command form is necessary, and inspect its complete scope before running it.

Watch the workflow

Review execution options before running

Review execution options before running · 0:21 · MP4
Screenshots and terminal evidence
Review execution options before running: manual run options initial preview
manual run options initial preview · Terminal state and styles (JSON)
Read the terminal text
jk jj
 * @  ntlmwnry [email protected] 2026-01-01 12:00:00 9d92e920
   │  Rebase source
›  │ ○  wltpzlrz [email protected] 2026-01-01 12:00:00 f62c75b7
   ├─╯  Rebase destination
   ○  zlqwtkol [email protected] 2026-01-01 12:00:00 22e435b3
   │  Rebase base
   ◆  zzzzzzzz root() 00000000


              Rebase revisions

              Source: 9d92e920fe8fce97760af20ef82e0ebf4857d0da
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: f62c75b7b89fea4d0a319ea1d8751bca79f78539
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options.meOf38/workflows.
              TbAz6t/rebase rebase -r 9d92e920fe8fce97760af20ef82e0ebf4857d0da -o
              f62c75b7b89fea4d0a319ea1d8751bca79f78539


              enter run  y copy  esc cancel  o options
Review execution options before running: manual run options drawer
manual run options drawer · Terminal state and styles (JSON)
Read the terminal text
jk jj
 * @  ntlmwnry [email protected] 2026-01-01 12:00:00 9d92e920
   │  Rebase source
›  │ ○  wltpzlrz [email protected] 2026-01-01 12:00:00 f62c75b7
   ├─╯  Rebase destination
   ○  zlqwtkol [email protected] 2026-01-01 12:00:00 22e435b3
   │  Rebase base
   ◆  zzzzzzzz root() 00000000
            Run options · this command only

            › Working copy      snapshot/update
              Operation         latest
              Immutable commits protected

            Ignore skips both snapshotting and updating working-copy files.

            Repository:
            /home/runner/work/jk/jk/target/manual-fixtures/run-options.meOf38/workflows.TbAz
            6t/rebase
            Fixed to the repository that supplied these operands.
            Options affect this command only. Normal operation integration stays enabled.

            jj --no-pager --color always --repository
            /home/runner/work/jk/jk/target/manual-fixtures/run-options.meOf38/workflows.TbAz
            6t/rebase rebase -r 9d92e920fe8fce97760af20ef82e0ebf4857d0da -o
            f62c75b7b89fea4d0a319ea1d8751bca79f78539


            ↑↓ select  Enter edit
            a apply to preview  Esc cancel
Review execution options before running: manual run options cancelled preview
manual run options cancelled preview · Terminal state and styles (JSON)
Read the terminal text
jk jj
 * @  ntlmwnry [email protected] 2026-01-01 12:00:00 9d92e920
   │  Rebase source
›  │ ○  wltpzlrz [email protected] 2026-01-01 12:00:00 f62c75b7
   ├─╯  Rebase destination
   ○  zlqwtkol [email protected] 2026-01-01 12:00:00 22e435b3
   │  Rebase base
   ◆  zzzzzzzz root() 00000000


              Rebase revisions

              Source: 9d92e920fe8fce97760af20ef82e0ebf4857d0da
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: f62c75b7b89fea4d0a319ea1d8751bca79f78539
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options.meOf38/workflows.
              TbAz6t/rebase rebase -r 9d92e920fe8fce97760af20ef82e0ebf4857d0da -o
              f62c75b7b89fea4d0a319ea1d8751bca79f78539


              enter run  y copy  esc cancel  o options
Review execution options before running: manual run options applied preview
manual run options applied preview · Terminal state and styles (JSON)
Read the terminal text
jk jj
 * @  ntlmwnry [email protected] 2026-01-01 12:00:00 9d92e920
   │  Rebase source
›  │ ○  wltpzlrz [email protected] 2026-01-01 12:00:00 f62c75b7
   ├─╯  Rebase destination
   ○  zlqwtkol [email protected] 2026-01-01 12:00:00 22e435b3
   │  Rebase base
   ◆  zzzzzzzz root() 00000000

              Rebase revisions

              Source: 9d92e920fe8fce97760af20ef82e0ebf4857d0da
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: f62c75b7b89fea4d0a319ea1d8751bca79f78539
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.
              ! Ignores the current working-copy snapshot.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options.meOf38/workflows.
              TbAz6t/rebase --ignore-working-copy rebase -r
              9d92e920fe8fce97760af20ef82e0ebf4857d0da -o
              f62c75b7b89fea4d0a319ea1d8751bca79f78539


              enter run  y copy  esc cancel  o options
Review execution options before running: manual run options invalid operation
manual run options invalid operation · Terminal state and styles (JSON)
Read the terminal text
jk jj
 * @  ntlmwnry [email protected] 2026-01-01 12:00:00 9d92e920
   │  Rebase source
›  │ ○  wltpzlrz [email protected] 2026-01-01 12:00:00 f62c75b7
   ├─╯  Rebase destination
   ○  zlqwtkol [email protected] 2026-01-01 12:00:00 22e435b3
   │  Rebase base
   ◆  zzzzzzzz root() 00000000
            Run options · this command only

              Working copy      ignored (history)
            › Operation         specific ID below
              Immutable commits protected

            Enter an operation ID (12+ hex digits), or clear it for latest. Historical edits
            create concurrent history and leave working-copy files unchanged.

            Repository:
            /home/runner/work/jk/jk/target/manual-fixtures/run-options.meOf38/workflows.TbAz
            6t/rebase
            Fixed to the repository that supplied these operands.
            Options affect this command only. Normal operation integration stays enabled.
            Operation: bad
            Working-copy files are ignored. Refresh returns to latest history.
            Use an operation ID with at least 12 hexadecimal digits.

            Use an operation ID with at least 12 hexadecimal digits.

            ↑↓ select  Enter edit
            a apply to preview  Esc cancel
Review execution options before running: manual run options historical preview
manual run options historical preview · Terminal state and styles (JSON)
Read the terminal text
jk jj
 * @  ntlmwnry [email protected] 2026-01-01 12:00:00 9d92e920
   │  Rebase source
›  │ ○  wltpzlrz [email protected] 2026-01-01 12:00:00 f62c75b7
   ├─╯  Rebase destination
   ○  zlqwtkol [email protected] 2026-01-01 12:00:00 22e435b3
   │  Rebase base
   ◆  zzzzzzz
              Rebase revisions

              Source: 9d92e920fe8fce97760af20ef82e0ebf4857d0da
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: f62c75b7b89fea4d0a319ea1d8751bca79f78539
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.
              ! Ignores the current working-copy snapshot.
              ! Runs at operation 012345abcdef.
              ! May rewrite immutable commits.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options.meOf38/workflows.
              TbAz6t/rebase --at-operation 012345abcdef --ignore-immutable rebase -r
              9d92e920fe8fce97760af20ef82e0ebf4857d0da -o
              f62c75b7b89fea4d0a319ea1d8751bca79f78539


              enter run  y copy  esc cancel  o options

Binary, tool versions, and file hashes · Accepted pixel, text/style, and video review · action-diagnostics/bin/dependencies.log · action-diagnostics/tape-1.log · Outcome assertions 1

All retained evidence (50 files)

Includes source tapes, original helper scripts, fixture details, terminal states, and logs.

Other recorded forms and recovery paths (3)

Rebase from an earlier operation while preserving working-copy files

Rebase from an earlier operation while preserving working-copy files · 0:26 · MP4
Screenshots and terminal evidence
Rebase from an earlier operation while preserving working-copy files: manual run options historical operation
manual run options historical operation · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  qxpsvvnm [email protected] 2026-01-01 12:00:00 82854cfa
·  │  Rebase source
   │ ○  vnuusuor [email protected] 2026-01-01 12:00:00 1bf73cde
   ├─╯  Rebase destination
   ○  ssnzz Run options · this command only
   │  Rebas
   ◆  zzzzz   Working copy      ignored (history)
            › Operation         specific ID below
              Immutable commits protected

            Enter an operation ID (12+ hex digits), or clear it for latest. Historical edits
            create concurrent history and leave working-copy files unchanged.

            Repository:
            /home/runner/work/jk/jk/target/manual-fixtures/run-options.rewGGK/workflows.2YHj
            gO/rebase
            Fixed to the repository that supplied these operands.
            Options affect this command only. Normal operation integration stays enabled.
            Operation:
            844cd0328e09a3fa729680e7091c0b7ddd6b489ced36211c13c062452b0890e027cf64171d8df80e
            89cfb17f312895f09810b139bacdc18267a6589ae0877898
            Working-copy files are ignored. Refresh returns to latest history.

            jj --no-pager --color always --repository
            /home/runner/work/jk/jk/target/manual-fixtures/run-options.rewGGK/workflows.2YHj
            gO/rebase --at-operation
            844cd0328e09a3fa729680e7091c0b7ddd6b489ced36211c13c062452b0890e027cf64171d8df80e
            89cfb17f312895f09810b139bacdc18267a6589ae0877898 rebase -r
            82854cfadccf82d86df63a035362d6057bbddca8 -o
            1bf73cde340edbc5f18853750166f033f82328b2

            ↑↓ select  Enter edit
            a apply to preview  Esc cancel
Rebase from an earlier operation while preserving working-copy files: manual run options historical preview
manual run options historical preview · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  qxpsvvnm [email protected] 2026-01-01 12:00:00 82854cfa
·  │  Rebase source
   │ ○  vnuusuor [email protected] 2026-01-01 12:00:00 1bf73cde
   ├─╯  Rebase destination
   ○  ssnzznv
   │  Rebase  Rebase revisions
   ◆  zzzzzzz
              Source: 82854cfadccf82d86df63a035362d6057bbddca8
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: 1bf73cde340edbc5f18853750166f033f82328b2
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.
              ! Ignores the current working-copy snapshot.
              ! Runs at operation
              844cd0328e09a3fa729680e7091c0b7ddd6b489ced36211c13c062452b0890e027cf64171d8d
              f80e89cfb17f312895f09810b139bacdc18267a6589ae0877898.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options.rewGGK/workflows.
              2YHjgO/rebase --at-operation
              844cd0328e09a3fa729680e7091c0b7ddd6b489ced36211c13c062452b0890e027cf64171d8d
              f80e89cfb17f312895f09810b139bacdc18267a6589ae0877898 rebase -r
              82854cfadccf82d86df63a035362d6057bbddca8 -o
              1bf73cde340edbc5f18853750166f033f82328b2


              enter run  y copy  esc cancel  o options
Rebase from an earlier operation while preserving working-copy files: manual run options historical completed
manual run options historical completed · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  qxpsvvnm [email protected] 2026-01-01 12:00:00 5e7d9250
·  │  Rebase source
   ○  vnuusuor [email protected] 2026-01-01 12:00:00 1bf73cde
   │  Rebase destination
   ○  ssnzznvu [email protected] 2026-01-01 12:00:00 after-baseline 42b28741
   │  Rebase base
   ◆  zzzzzzzz root() 00000000





























                            ✓ Completed at historical operation · latest history refreshed · C history
? help  H home  L log  r refresh  enter open  d diff  v evolog  s status  space mark  o ops  ...  q quit
Rebase from an earlier operation while preserving working-copy files: manual run options historical operation result
manual run options historical operation result · Terminal state and styles (JSON)
Read the terminal text
jk Command 3
Command: jj --no-pager --color always --repository /home/runner/work/jk/jk/target/manual-fixtures/run-op
Source: log rebase
Status: success
Duration: 20 ms
Operation: none
Summary: stderr: Rebased 1 commits to destination.

Stdout:
  bytes: 0
  lines: 0
  truncated: no
  redacted: no
  <empty>

Stderr:
  bytes: 34
  lines: 1
  truncated: no
  redacted: no

Rebased 1 commits to destination.
















? help  V options  r refresh  j/k line  space page  q quit

Binary, tool versions, and file hashes · Accepted pixel, text/style, and video review · action-diagnostics/bin/dependencies.log · action-diagnostics/tape-1.log · fixture-preparation.log · Outcome assertions 1

All retained evidence (47 files)

Includes source tapes, original helper scripts, fixture details, terminal states, and logs.

Rebase history while leaving working-copy files unchanged

Rebase history while leaving working-copy files unchanged · 0:17 · MP4
Screenshots and terminal evidence
Rebase history while leaving working-copy files unchanged: manual run options ignore operation
manual run options ignore operation · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  qzpyupqo [email protected] 2026-01-01 12:00:00 336e83fb
·  │  Rebase source
   │ ○  qtnrvvqu [email protected] 2026-01-01 12:00:00 08d882d5
   ├─╯  Rebase destination
   ○  ttptlksv [email protected] 2026-01-01 12:00:00 6ffc5ec8
   │  Rebase base
   ◆  zzzzzzzz root() 00000000
            Run options · this command only

            › Working copy      ignore
              Operation         latest
              Immutable commits protected

            Ignore skips both snapshotting and updating working-copy files.

            Repository:
            /home/runner/work/jk/jk/target/manual-fixtures/run-options.uIxGSF/workflows.NyXS
            QU/rebase
            Fixed to the repository that supplied these operands.
            Options affect this command only. Normal operation integration stays enabled.

            jj --no-pager --color always --repository
            /home/runner/work/jk/jk/target/manual-fixtures/run-options.uIxGSF/workflows.NyXS
            QU/rebase --ignore-working-copy rebase -r
            336e83fb10cce0754080ebe999197656e67932a3 -o
            08d882d56fb49d80f85844d1717b90f469771443


            ↑↓ select  Enter edit
            a apply to preview  Esc cancel
Rebase history while leaving working-copy files unchanged: manual run options ignore preview
manual run options ignore preview · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  qzpyupqo [email protected] 2026-01-01 12:00:00 336e83fb
·  │  Rebase source
   │ ○  qtnrvvqu [email protected] 2026-01-01 12:00:00 08d882d5
   ├─╯  Rebase destination
   ○  ttptlksv [email protected] 2026-01-01 12:00:00 6ffc5ec8
   │  Rebase base
   ◆  zzzzzzzz root() 00000000

              Rebase revisions

              Source: 336e83fb10cce0754080ebe999197656e67932a3
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: 08d882d56fb49d80f85844d1717b90f469771443
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.
              ! Ignores the current working-copy snapshot.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options.uIxGSF/workflows.
              NyXSQU/rebase --ignore-working-copy rebase -r
              336e83fb10cce0754080ebe999197656e67932a3 -o
              08d882d56fb49d80f85844d1717b90f469771443


              enter run  y copy  esc cancel  o options
Rebase history while leaving working-copy files unchanged: manual run options ignore completed
manual run options ignore completed · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  qzpyupqo [email protected] 2026-01-01 12:00:00 b1cf51ba
·  │  Rebase source
   ○  qtnrvvqu [email protected] 2026-01-01 12:00:00 08d882d5
   │  Rebase destination
   ○  ttptlksv [email protected] 2026-01-01 12:00:00 6ffc5ec8
   │  Rebase base
   ◆  zzzzzzzz root() 00000000





























                                           ✓ Completed without updating working-copy files · C history
? help  H home  L log  r refresh  enter open  d diff  v evolog  s status  space mark  o ops  ...  q quit
Rebase history while leaving working-copy files unchanged: manual run options ignore operation result
manual run options ignore operation result · Terminal state and styles (JSON)
Read the terminal text
jk Command 3
Command: jj --no-pager --color always --repository /home/runner/work/jk/jk/target/manual-fixtures/run-op
Source: log rebase
Status: success
Duration: 22 ms
Operation: none
Summary: stderr: Rebased 1 commits to destination.

Stdout:
  bytes: 0
  lines: 0
  truncated: no
  redacted: no
  <empty>

Stderr:
  bytes: 34
  lines: 1
  truncated: no
  redacted: no

Rebased 1 commits to destination.
















? help  V options  r refresh  j/k line  space page  q quit

Binary, tool versions, and file hashes · Accepted pixel, text/style, and video review · action-diagnostics/bin/dependencies.log · action-diagnostics/tape-1.log · Outcome assertions 1

All retained evidence (46 files)

Includes source tapes, original helper scripts, fixture details, terminal states, and logs.

Review immutable protection before overriding it

Review immutable protection before overriding it · 0:30 · MP4
Screenshots and terminal evidence
Review immutable protection before overriding it: manual run options immutable selector
manual run options immutable selector · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  zmuwpmrz [email protected] 2026-01-01 12:00:00 1ea1c096
·  │  Rebase source
   │ ○  tknqoqsk [email protected] 2026-01-01 12:00:00 eea84fa9
   ├─╯  Rebase destination
   ◆  pkkxyxpy [email protected] 2026-01-01 12:00:00 f6e9ae2a
   │  Rebase base
   ◆  zzzzzzzz root() 00000000






           Choose rebase destination

           Source: 1ea1c096ef2e
           Scope: revision only (-r)   r revision  b branch  s descendants
           Place: onto (-o)   o onto  A after  B before
           Search: /Rebase destination
           › eea84fa905db  Rebase destination

           / search   ↑/↓ choose   Enter preview   Esc cancel
Review immutable protection before overriding it: manual run options immutable preview
manual run options immutable preview · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  zmuwpmrz [email protected] 2026-01-01 12:00:00 1ea1c096
·  │  Rebase source
   │ ○  tknqoqsk [email protected] 2026-01-01 12:00:00 eea84fa9
   ├─╯  Rebase destination
   ◆  pkkxyxpy [email protected] 2026-01-01 12:00:00 f6e9ae2a
   │  Rebase base
   ◆  zzzzzzzz root() 00000000


              Rebase revisions

              Source: 1ea1c096ef2e40d47137fbdbf4659f75345d2487
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: eea84fa905dbb889a872ada7075e4840b495d34f
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options-immutable.KPN6EG/
              workflows.0ENLtJ/rebase rebase -r 1ea1c096ef2e40d47137fbdbf4659f75345d2487
              -o eea84fa905dbb889a872ada7075e4840b495d34f


              enter run  y copy  esc cancel  o options
Review immutable protection before overriding it: manual run options immutable rejected
manual run options immutable rejected · Terminal state and styles (JSON)
Read the terminal text
jk Command 3
Command: jj --no-pager --color always --repository /home/runner/work/jk/jk/target/manual-fixtures/run-op
Source: log rebase
Status: exit 1
Duration: 10 ms
Operation: none
Summary: exit 1: Error: Commit 1ea1c096ef2e is immutable

Stdout:
  bytes: 0
  lines: 0
  truncated: no
  redacted: no
  <empty>

Stderr:
  bytes: 591
  lines: 7
  truncated: no
  redacted: no

Error: Commit 1ea1c096ef2e is immutable
Hint: Could not modify commit: zmuwpmrz 1ea1c096 Rebase source
Hint: Immutable commits are used to protect shared history.
Hint: For more information, see:
      - https://docs.jj-vcs.dev/latest/config/#set-of-immutable-commits
      - `jj help -k config`, "Set of immutable commits"
Hint: This operation would rewrite 1 immutable commits.










? help  V options  r refresh  j/k line  space page  q quit
Review immutable protection before overriding it: manual run options immutable override
manual run options immutable override · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  zmuwpmrz [email protected] 2026-01-01 12:00:00 1ea1c096
·  │  Rebase source
   │ ○  tknqoqsk [email protected] 2026-01-01 12:00:00 eea84fa9
   ├─╯  Rebase destination
   ◆  pkkxyxpy [email protected] 2026-01-01 12:00:00 f6e9ae2a
   │  Rebase base
   ◆  zzzzzzzz root() 00000000

              Rebase revisions

              Source: 1ea1c096ef2e40d47137fbdbf4659f75345d2487
              Source role: revision only
              Moves the selected revision (-r); reconnects descendants to its old parents.
              Destination: eea84fa905dbb889a872ada7075e4840b495d34f
              Placement: onto
              Makes this revision the new parent (-o).

              ! Rewrites local history.
              ! May rewrite immutable commits.

              Command
              jj --no-pager --color always --repository
              /home/runner/work/jk/jk/target/manual-fixtures/run-options-immutable.KPN6EG/
              workflows.0ENLtJ/rebase --ignore-immutable rebase -r
              1ea1c096ef2e40d47137fbdbf4659f75345d2487 -o
              eea84fa905dbb889a872ada7075e4840b495d34f


              enter run  y copy  esc cancel  o options
Review immutable protection before overriding it: manual run options immutable success
manual run options immutable success · Terminal state and styles (JSON)
Read the terminal text
jk jj
›  @  zmuwpmrz [email protected] 2026-01-01 12:00:00 e5e4584f
·  │  Rebase source
   ~  (elided revisions)
   ◆  zzzzzzzz root() 00000000
































                                             ✓ Rebased revisions · a u undo · C history · o operations
? help  H home  L log  r refresh  enter open  d diff  v evolog  s status  space mark  o ops  ...  q quit

Binary, tool versions, and file hashes · Accepted pixel, text/style, and video review · action-diagnostics/bin/dependencies.log · action-diagnostics/tape-1.log · Outcome assertions 1 · Outcome assertions 2

All retained evidence (49 files)

Includes source tapes, original helper scripts, fixture details, terminal states, and logs.