feat(mq): add configurable integration branch naming (#104)
Enterprise teams can now customize integration branch names to match
their conventions (e.g., username/TICKET-123/feature-name).
- Add integration_branch_template to MergeQueueConfig
- Add --branch CLI override for gt mq integration create
- Support {epic}, {prefix}, {user} template variables
- Validate branch names for git-safe characters
- Store actual branch name in epic metadata at create time
- Read stored branch name in land/status (fallback for old epics)
Also fixes unrelated build error in polecat/manager.go (polecatPath
variable was undefined).
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
committed by
Steve Yegge
parent
f19ddc5400
commit
358fcaf935
@@ -605,6 +605,14 @@ type MergeQueueConfig struct {
|
||||
// IntegrationBranches enables integration branch workflow for epics.
|
||||
IntegrationBranches bool `json:"integration_branches"`
|
||||
|
||||
// IntegrationBranchTemplate is the pattern for integration branch names.
|
||||
// Supports variables: {epic}, {prefix}, {user}
|
||||
// - {epic}: Full epic ID (e.g., "RA-123")
|
||||
// - {prefix}: Epic prefix before first hyphen (e.g., "RA")
|
||||
// - {user}: Git user.name (e.g., "klauern")
|
||||
// Default: "integration/{epic}"
|
||||
IntegrationBranchTemplate string `json:"integration_branch_template,omitempty"`
|
||||
|
||||
// OnConflict specifies conflict resolution strategy: "assign_back" or "auto_rebase".
|
||||
OnConflict string `json:"on_conflict"`
|
||||
|
||||
|
||||
Reference in New Issue
Block a user