feat(sync): read sync-branch from config.yaml (bd-io0)

sync.branch config was lost on clone because it was only stored in
the database (which is gitignored). Now syncbranch.Get() checks:
1. BEADS_SYNC_BRANCH env var (highest)
2. config.yaml sync-branch (tracked, persists across clones)
3. Database config (local override)
4. Empty (use current branch)

Changes:
- Update syncbranch.Get() to check config.yaml
- Update config.yaml template with sync-branch option
- Set sync-branch: beads-sync in this repo config.yaml

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Steve Yegge
2025-11-30 10:54:41 -08:00
parent d02905a4fa
commit f8c87aba73
4 changed files with 111 additions and 89 deletions

View File

@@ -37,6 +37,11 @@ issue-prefix: "bd"
# Debounce interval for auto-flush (can also use BEADS_FLUSH_DEBOUNCE)
# flush-debounce: "5s"
# Git branch for beads commits (bd sync will commit to this branch)
# IMPORTANT: This setting persists across clones (unlike database config).
# Can also use BEADS_SYNC_BRANCH env var for local override.
sync-branch: "beads-sync"
# Integration settings (access with 'bd config get/set')
# These are stored in the database, not in this file:
# - jira.url
@@ -45,4 +50,3 @@ issue-prefix: "bd"
# - linear.api-key
# - github.org
# - github.repo
# - sync.branch - Git branch for beads commits (use BEADS_SYNC_BRANCH env var or bd config set)

File diff suppressed because one or more lines are too long