Skip to content

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.

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.