jj-status
Show repository working copy status
TLDR
Show high-level status of the repository
SYNOPSIS
jj status [OPTIONS] [<PATH>...]
PARAMETERS
-r, --revision <REV>
Show status relative to a specific revision or change ID
--at-operation <OPERATION>
Show status at a given operation ID
--porcelain
Machine-readable output (one line per file)
--summary
Show only summary statistics (added/modified/etc.)
--untracked <MODE>
Handle untracked files: all, relevant, or none
-R, --repository <PATH>
Repository to operate on
--ignore-working-copy
Ignore working copy changes (use concurrent snapshot)
--no-graph
Omit graph visualization in output
-q, --quiet
Reduce output verbosity
-v, --verbose
Increase output verbosity
DESCRIPTION
The jj status command provides a concise overview of the working copy state in Jujutsu (jj), a Git-compatible version control system. It lists uncommitted changes, including added, modified, removed, and untracked files, relative to the working-copy commit.
Unlike git status, jj status emphasizes the distinction between the working copy and immutable commits, showing changes that would be included in the next commit. It supports multi-repo awareness and operation-based history. Output is colorized by default, with sections for staged/unstaged changes, conflicts, and the current operation ID.
Common use cases include quick checks before committing (jj status or alias jj st) and scripting via --porcelain for machine-readable format. Paths can be specified to limit output. It integrates with jj's snapshotting model, where the working copy is always a commit.
CAVEATS
Output format may change; use --porcelain for scripts. Not all Git statuses map 1:1 due to jj's commit model. Large repos may be slow without paths.
EXAMPLES
jj st # Quick status
jj status --porcelain # Scriptable output
jj status --summary # Stats only
EXIT CODES
0: clean status
1: uncommitted changes or errors
2: invalid arguments
HISTORY
Introduced with Jujutsu (jj) v0.1.0 in 2022 by Martin von Zweigbergk at Google. Evolved from hg-prompt and fossil, focusing on usability over Git. Now at v0.20+ with stable porcelain output.
SEE ALSO
git-status(1), jj-diff(1), jj-log(1), jj-show(1)


