summaryrefslogtreecommitdiff
path: root/internal/config
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-06-24 01:30:19 +0300
committerPaul Buetow <paul@buetow.org>2025-06-24 01:30:19 +0300
commit702528d8e16b702bccc70df3ddfee687391e2955 (patch)
treea2d8cb15aada5646e91a3cc99624786be5bc9332 /internal/config
parentbfc52a37f0650e0d8cf727f5998882a3bcebbe0c (diff)
feat: add branch exclusion feature with regex patterns
Users can now exclude branches from synchronization using regex patterns in the configuration file. This is useful for: - Excluding temporary or experimental branches - Skipping vendor or third-party branches - Ignoring deployment-specific branches Configuration example: ```json { "exclude_branches": [ "^codex/", // Exclude branches starting with "codex/" "^temp-", // Exclude branches starting with "temp-" "-wip$" // Exclude branches ending with "-wip" ] } ``` Features: - Regex pattern matching for flexible exclusion rules - Clear reporting of excluded branches during sync - Excluded branches are filtered from sync but still analyzed for abandonment - Invalid regex patterns are reported but don't stop sync The feature helps maintain cleaner synchronization by allowing users to ignore branches that shouldn't be synchronized across all repositories. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'internal/config')
-rw-r--r--internal/config/config.go5
1 files changed, 3 insertions, 2 deletions
diff --git a/internal/config/config.go b/internal/config/config.go
index 1bfcedc..84f66b1 100644
--- a/internal/config/config.go
+++ b/internal/config/config.go
@@ -17,8 +17,9 @@ type Organization struct {
// Config holds the application configuration
type Config struct {
- Organizations []Organization `json:"organizations"`
- Repositories []string `json:"repositories,omitempty"`
+ Organizations []Organization `json:"organizations"`
+ Repositories []string `json:"repositories,omitempty"`
+ ExcludeBranches []string `json:"exclude_branches,omitempty"` // Regex patterns for branches to exclude
}
// Load reads and parses the configuration file