majordomus worktree remove
Remove one linked worktree by branch or path. Never the primary checkout, never a branch, never uncommitted work without --force
majordomus worktree remove
Usage
majordomus worktree remove [OPTIONS] <SELECTOR>Arguments
| argument | value | default | description |
|---|---|---|---|
| <SELECTOR> | <SELECTOR> | required | An exact branch name or an exact path |
| --force | flag | — | Remove it even though it holds uncommitted work or is locked |
| --repo | <PATH> | — | Start the search for the repository root here (default: the current directory) (accepted by every subcommand) |
| --discovery | vcs | filesystem | vcs | How declarative files are enumerated (accepted by every subcommand)
|
| --strict | flag | — | Refuse to proceed when any file of the layer carries an error diagnostic (accepted by every subcommand) |
| --share | <DIR> | — | The tool distribution's share directory (kinds.yaml, schemas/); default: $MAJORDOMUS_SHARE, then the repository's own share/, then the one beside the executable (accepted by every subcommand) |
| --format | text | json | text | Output shape (accepted by every subcommand)
|
Examples
-
Remove a worktree, and keep its branch
Removes the worktree and nothing else. The branch it held still exists: worktree lifecycle and branch lifecycle are separate, and deleting a branch is a git command a person types deliberately. A worktree with uncommitted work is refused rather than removed.
$ majordomus worktree create feature/improve-cli $ majordomus worktree remove feature/improve-cliVerified by the example tests: exits 0; prints removed, feature/improve-cli still exists.
Where this comes from
Declared once in apps/majordomus-cli/src/cli.rs: clap for the structure, typed Rust metadata beside it for the examples. This page, majordomus worktree remove --help, docs/generated/cli.md and docs/generated/cli.json are projections of that one declaration.
The whole command line on one page: the registry's command-line page. The task lifecycle (init, start, finish, doctor, ...) belongs to the shell tool, a different program: Commands and its specification.