{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/project_branching_model", "title": "project_branching_model", "allOf": [ { "$ref": "#/components/schemas/object" }, { "type": "object", "title": "Project Branching Model", "description": "A project's branching model", "properties": { "branch_types": { "type": "array", "description": "The active branch types.", "items": { "type": "object", "properties": { "kind": { "type": "string", "description": "The kind of branch.", "enum": [ "feature", "bugfix", "release", "hotfix" ] }, "prefix": { "type": "string", "description": "The prefix for this branch type. A branch with this prefix will be classified as per `kind`. The prefix must be a valid prefix for a branch and must always exist. It cannot be blank, empty or `null`." } }, "required": [ "kind", "prefix" ], "additionalProperties": false }, "minItems": 0, "maxItems": 4, "uniqueItems": true }, "development": { "type": "object", "properties": { "name": { "type": "string", "description": "Name of the target branch. If inherited by a repository, it will default to the main branch if the specified branch does not exist." }, "use_mainbranch": { "type": "boolean", "description": "Indicates if the setting points at an explicit branch (`false`) or tracks the main branch (`true`)." } }, "required": [ "name", "use_mainbranch" ], "additionalProperties": false }, "production": { "type": "object", "properties": { "name": { "type": "string", "description": "Name of the target branch. If inherited by a repository, it will default to the main branch if the specified branch does not exist." }, "use_mainbranch": { "type": "boolean", "description": "Indicates if the setting points at an explicit branch (`false`) or tracks the main branch (`true`)." } }, "required": [ "name", "use_mainbranch" ], "additionalProperties": false } }, "additionalProperties": true } ] }