Per-Repo Config
Each managed repository can opt in with a .gitrepoforge file at its root.
Example
name: my-repo
default_branch: main
config:
license: mit
docs:
enabled: true
domain: docs.example.com
Fields
| Field | Required | Description |
|---|---|---|
name | yes | Must match the repository folder name. |
default_branch | yes | Repository metadata made available to templates and root-level Git placeholders. |
config | no | Values that match keys defined in the config repo’s config/ folder. Missing keys may be filled from definition defaults. |
Validation Rules
namemust match the repository folder name.default_branchmust be present.- Required config keys must be present.
- Missing keys use the definition’s
defaultvalue when one is provided. - Reserved top-level field names such as
nameanddefault_branchcannot appear insideconfig:. - The repo config does not contain a top-level
gitsection; Git automation is configured only in.gitrepoforge-config. - Unknown config keys are rejected.
- Values must match the declared type.
- Object values must be YAML mappings, and nested keys are validated against the matching
config/<key>/definitions from the config repo. - String values with
enummust use one of the allowed values.