CLI Reference
Advanced Commands
Use the current local diagnostics without mistaking planned object plumbing for shipped commands.
Alpha safety boundary
Keep independent backups before investigating repository internals. Do not delete or rewrite files inside
.dits/objects by hand.Current commands
| Command | Current behavior | Usage |
|---|---|---|
| fsck | Verify local objects, manifests, commits, refs, and commit-graph links | dits fsck [-v] |
| gc | Report unreachable-object candidates without deleting anything | dits gc --dry-run |
dits fsck
fsck reads local repository structures, verifies BLAKE3 object paths against their bytes, checks manifests and commits, and validates refs and commit-graph links. It reports a nonzero result when integrity errors are found; it does not fetch or repair missing data.
# Check the repository
dits fsck
# Show each check as it runs
dits fsck --verbosedits gc
Destructive garbage collection is disabled. The only supported mode is a read-only candidate report:
dits gc --dry-run
# These flags are accepted but ignored in read-only mode:
dits gc --dry-run --prune --aggressiveNo space is reclaimed
Bare
dits gc returns a nonzero error without changes. --prune and --aggressive never delete or repack data in the current alpha. See the detailed maintenance reference.Low-level object commands are roadmap
The following familiar Git-shaped names are not Dits commands today. They are design candidates, so examples that show them succeeding are intentionally omitted:
dits prunedits packdits unpackdits cat-filedits hash-objectdits rev-parsedits ls-treedits ls-files
Use dits --help as the command-level authority and the status and roadmap for capability maturity.