Dolt sync overview
Beads uses Dolt (git for data) as its database backend. Every write operation creates a Dolt commit:Basic sync workflow
1
Configure Dolt remote
Add a remote for syncing (DoltHub, DoltLab, or file-based):
2
Push changes
Push local commits to remote:
3
Pull changes
Pull remote commits:Dolt handles merges automatically with cell-level 3-way merge.
Sync modes
Direct mode (default)
Issues commit directly to the Dolt database:- Simple, no extra configuration
- Immediate Dolt commits
- Dolt commits are separate from git commits
- Requires explicit push/pull
Protected branch mode
For projects with branch protection (GitHub, GitLab):- Works with protected branches
- Beads commits don’t directly touch main
- Can review metadata changes in PRs
- Requires periodic merges
- Slightly more complex workflow
See Protected Branch Workflow for detailed setup.
Team sync workflows
Continuous sync (small teams)
Every write auto-pushes:Periodic sync (larger teams)
Pull before checking ready work, push after completing work:Branch-based sync (formal processes)
Each agent/developer works on a branch:Backup strategies
Automated Dolt backups
Usebd backup for automated backups:
1
Initialize backup
2
Configure auto-backup
3
Manual backup
JSONL exports
For portable backups:Remote redundancy
Push to multiple remotes:Scheduled backups
Set up cron job:Conflict resolution
Dolt uses cell-level 3-way merge:Auto-merge scenarios
Different issues modified:Manual conflict resolution
Same field modified:Multi-machine setup
Setup on Machine 1
Setup on Machine 2
Ongoing workflow
Machine 1:Recovery scenarios
Lost local database
Restore from backup
Time travel
Restore to previous state:Performance considerations
Large databases
For repositories with 10,000+ issues:Network optimization
Troubleshooting
Push fails: “ref update failed”
Cause: Remote has commits you don’t have. Solution:Pull fails: “merge conflict”
Cause: Conflicting changes on same field. Solution:Remote not found
Cause: Remote not configured or incorrect URL. Solution:See also
- CLI Reference: dolt - Complete Dolt command reference
- CLI Reference: backup - Backup command reference
- Protected Branches - GitHub/GitLab workflow
- Contributor mode - Multi-repo workflows