How Tracer Uses Git
Tracer stores issues in JSONL (JSON Lines) format at.trace/issues.jsonl. This file is:
- Human-readable - each line is a JSON object
- Git-friendly - changes are easy to merge
- Portable - works across any machine with Git
- Fast queries via SQLite
- Git-friendly storage for syncing
Automatic Export
Every time you make a change, Tracer updates.trace/issues.jsonl:
The
.trace/ directory is designed to be committed to Git. Add it to your repository to share issues with your team.Automatic Import
When you pull changes from Git, Tracer detects updates automatically:Multi-Machine Workflow
Use Tracer seamlessly across multiple machines:1
Machine A: Create issues
2
Machine B: Pull and continue
3
Machine B: Push progress
4
Machine A: Sync latest
Handling Merge Conflicts
If two machines modify the same issue simultaneously, Git may create a merge conflict in.trace/issues.jsonl.
Resolving Conflicts
1
Git shows conflict
2
Resolve the conflict
Open Usually keep both changes (they’re on separate lines):For the same issue ID, keep the most recent version (check timestamps).
.trace/issues.jsonl and resolve the conflict manually:3
Import the resolved file
Manual Export & Import
While Tracer handles sync automatically, you can manually export and import if needed.Export Issues
Export all issues to JSONL:Import Issues
Import issues from JSONL:- New issues - Created in the database
- Existing issues - Updated with new data (unless
--skip-existing) - Dependencies - Imported and created automatically
JSONL Format
Each line in.trace/issues.jsonl is a complete issue object:
- One issue per line
- Valid JSON on each line
- Includes dependencies inline
- Sortable and diffable
Don’t edit
.trace/issues.jsonl manually unless you know what you’re doing. Use tracer commands instead.Multi-Agent Collaboration
Multiple agents can work on the same project by syncing via Git:Git Best Practices
Backup and Recovery
Create backups of your issues:Advanced: Custom Sync Scripts
Automate syncing with Git hooks or scripts:Troubleshooting
Issues not syncing
Issues not syncing
Make sure
.trace/issues.jsonl is committed:Changes not appearing after pull
Changes not appearing after pull
Trigger import manually:Or run any tracer command (import happens automatically):
Lost changes after merge
Lost changes after merge
Check Git history:Restore from backup or previous commit if needed.