feat(vcs): Introduce the VCS module (#6388)

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
This commit is contained in:
Poliorcetics
2026-01-04 17:44:03 +01:00
committed by GitHub
parent 8a69666084
commit 0dd5a4f402
11 changed files with 426 additions and 34 deletions
+73
View File
@@ -1749,6 +1749,26 @@
"detect_folders": []
}
},
"vcs": {
"default": {
"disabled": false,
"fossil_modules": "$fossil_branch$fossil_metrics",
"git_modules": "$git_branch$git_commit$git_state$git_metrics$git_status",
"hg_modules": "$hg_branch$hg_state",
"order": [
"git",
"hg",
"pijul",
"fossil"
],
"pijul_modules": "$pijul_channel"
},
"allOf": [
{
"$ref": "#/definitions/VcsConfig"
}
]
},
"vcsh": {
"$ref": "#/$defs/VcshConfig",
"default": {
@@ -6518,6 +6538,59 @@
},
"additionalProperties": false
},
"VcsConfig": {
"type": "object",
"properties": {
"order": {
"description": "Order in which to discover VCSes. The first one found is the one used.",
"default": [
"git",
"hg",
"pijul",
"fossil"
],
"type": "array",
"items": {
"$ref": "#/definitions/Vcs"
}
},
"disabled": {
"description": "Disables the VCS module.",
"default": false,
"type": "boolean"
},
"fossil_modules": {
"description": "Modules to use when Fossil is matched.\n\nThey are configured separately at the top level.",
"default": "$fossil_branch$fossil_metrics",
"type": "string"
},
"git_modules": {
"description": "Modules to use when Git is matched.\n\nThey are configured separately at the top level.",
"default": "$git_branch$git_commit$git_state$git_metrics$git_status",
"type": "string"
},
"hg_modules": {
"description": "Modules to use when Mercurial is matched.\n\nThey are configured separately at the top level.",
"default": "$hg_branch$hg_state",
"type": "string"
},
"pijul_modules": {
"description": "Modules to use when Pijul is matched.\n\nThey are configured separately at the top level.",
"default": "$pijul_channel",
"type": "string"
}
},
"additionalProperties": false
},
"Vcs": {
"type": "string",
"enum": [
"fossil",
"git",
"hg",
"pijul"
]
},
"VcshConfig": {
"type": "object",
"properties": {