repoman¶
Declarative multi-forge Git workspace sync — keep clones under one layout, discover namespaces on GitLab and GitHub, and (later) manage forge-side mirrors from a single YAML file.
What works today¶
| Area | Commands |
|---|---|
| Configuration | config init, config path, config validate, config show, config set |
| Diagnostics | doctor |
| Local workspace | local plan, local sync, local status |
Status lines use a fixed vocabulary: OK · WOULD UPDATE · UPDATED · SKIP ·
WARN · ERROR.
Mutating commands are preview-first: local sync only changes disk with --write;
config set only writes YAML with --write.
Quick links¶
- Getting started — install, first config, tokens, first sync
- Published docs — live site (enable GitHub Pages first; see Deployment)
- Command reference — all subcommands
- Design specification — architecture, schema, roadmap
- Examples — runnable sample commands and namespace filter recipes
- Examples (repository) — safe runnable YAML in the repo tree
Install¶
From PyPI (installs the repoman CLI):
pipx install repoman-cli
# or: pip install repoman-cli
# or: uv pip install repoman-cli
repoman --version
From a clone (development):
git clone https://github.com/dfabianus/repoman.git
cd repoman
uv sync --all-groups
uv run repoman --version
Requirements: Python ≥ 3.11, Git on PATH, uv.