CLI flags
revision [flags]With no flags, revision opens the TUI on the current directory.
| Flag | Default | Description |
|---|---|---|
--path <dir> |
. |
The SVN working copy to operate on. |
--version |
— | Print the version and exit. |
--update |
— | Check for a newer release and update the binary. Release builds only. |
--update-with <curl|go> |
prompt | The method --update uses. Requires --update. |
--help |
— | Show usage and exit. |
--path
Section titled “--path”revision --path /path/to/working-copyThe path is resolved to an absolute path before anything else runs. If it is not an SVN
working copy, revision says so and exits with status 1 rather than opening a UI it
cannot use.
This sets where revision operates; displayFrom
controls how much of the working copy it shows.
Once the TUI is open, P re-scopes it to another directory inside that working copy for
the rest of the session — see
changing the source path — and W moves it to a
different working copy altogether, see
switching repositories. Neither is saved; the next
launch uses --path again.
--version
Section titled “--version”$ revision --versionrevision v1.4.0A go install …@<tag> build reports that tag, make build reports what git describe
gave it, and a plain go build reports dev.
--update and --update-with
Section titled “--update and --update-with”revision --update # check, then prompt for a methodrevision --update --update-with curl # non-interactive: run the release's install scriptrevision --update --update-with go # non-interactive: go install …@<tag>--update-with without --update is a usage error, not a silent no-op.
A build checks for and applies updates when it came from the release pipeline, or from
go install …@<tag> at a published tag. make build, a local cross-compile and an
untagged go install never do. See
Updating revision.
Exit status
Section titled “Exit status”| Status | Meaning |
|---|---|
0 |
Clean exit, including quitting the TUI. |
1 |
svn is not on your PATH, the path is not a working copy, or an update failed. |
2 |
The flags given do not go together. |
Errors are written to stderr, prefixed revision:.
Startup checks
Section titled “Startup checks”Before the UI appears, revision:
- Looks for
svnon yourPATHand exits with a message if it is missing. - Resolves
--pathand runssvn infoagainst it, with a 15-second timeout. An authentication failure produces an actionable hint rather than a hang. - Loads
config.json, reconciling anything missing or invalid and reporting the result in a startup toast. - Pins the colour profile when a named theme is selected.
Environment
Section titled “Environment”revision reads no configuration from the environment beyond what SVN and OpenSSH use
themselves. Two variables are worth knowing about:
| Variable | Used by |
|---|---|
XDG_CONFIG_HOME |
The config file location. |
VISUAL / EDITOR |
The native editor fallback. |
REVISION_VERSION and REVISION_INSTALL_DIR are read by the
install script, not by the binary.