docs/bootstrap/repos.md
mise can declare git repositories in [bootstrap.repos] and apply them with
mise bootstrap repos apply:
[bootstrap.repos]
"~/src/dotfiles" = { url = "[email protected]:jdx/dotfiles.git", ref = "main" }
"~/src/mise" = { url = "https://github.com/jdx/mise.git" }
Each key is the target path. The url is required. The optional ref can be a
branch, tag, or full commit SHA.
Repos run after [bootstrap.packages] and before [dotfiles], so a bootstrap
config can install git, clone a dotfiles repository, and then apply dotfiles
from that checkout.
origin URL matches.mise bootstrap repos apply or mise bootstrap.ref — an existing repo with the expected origin is considered
current; mise does not fetch or update it.mise bootstrap repos status # shows repo checkout state
mise bootstrap repos status --json # machine-readable
mise bootstrap repos status --missing # exit 1 if any repo is not current
mise bootstrap repos apply # clone or update missing/changed repos
mise bootstrap repos apply --dry-run # print the commands without running them
mise bootstrap repos apply --yes # skip the confirmation prompt
| State | Meaning |
|---|---|
current | repo exists, origin matches, and ref matches |
missing | target path does not exist or is empty |
differs | repo is clean but not at the configured ref |
dirty | repo has local changes or untracked files |
conflict | target path is not the expected git repo |