What is Git Sync?
Git Sync is Auk’s approach to team collaboration and data backup. Instead of using cloud services, Auk leverages Git - the industry-standard version control system - to sync your API collections and environments.Why Git Instead of Cloud?
Full Control
You Choose Where Data Lives:- GitHub (public or private)
- GitLab (self-hosted or cloud)
- Bitbucket
- Gitee (Chinese service)
- Your own Git server
- Company internal Git
Standard Workflows
Use Familiar Git Tools:- Branches for feature development
- Pull requests for code review
- Merge strategies for conflict resolution
- Tags for versioning
- Git history for auditing
No Vendor Lock-in
Freedom to Move:- Not tied to specific cloud provider
- Easy migration between Git services
- Standard Git format
- Open source tools
Privacy & Security
Data Under Your Control:- Choose public or private repositories
- Self-host for complete privacy
- Encryption at rest and in transit
- Access control via Git permissions
How It Works
Architecture
Sync Process
Key Features
Automatic Synchronization
Set It and Forget It:- Configure sync interval (5min to 60min)
- Automatic commit of local changes
- Automatic pull and push
- Background operation
- Disable auto-sync if preferred
- Manual “Sync Now” button
- Review changes before pushing
- Selective syncing
Conflict Detection
Smart Conflict Handling:- Detects when same file modified by multiple people
- Shows clear conflict indicators
- Provides resolution options
- Preserves both versions for review
- Keep local changes
- Use remote changes
- Manual merge
- Smart merge (auto-resolve when possible)
Branch Support
Git Branching:- Create feature branches
- Switch between branches
- Merge branches
- Delete branches
- Experimental changes
- Large refactoring
- Team feature development
- Environment-specific branches
History & Rollback
Version Control:- Complete change history
- View diffs between versions
- Rollback to previous state
- Blame/annotate changes
- Who made changes
- When changes were made
- What was changed
- Why (commit messages)
Supported Git Services
GitHub
Features:- Public and private repositories
- Organization support
- OAuth authentication
- Pull requests
- Actions for CI/CD
GitLab
Features:- Self-hosted or GitLab.com
- Built-in CI/CD
- Container registry
- Issue tracking
Bitbucket
Features:- Atlassian integration
- Jira integration
- Pipelines for CI/CD
- Code review
Self-Hosted Git
Options:- GitLab CE (Community Edition)
- Gitea (lightweight)
- Gogs (simple)
- Gitolite (minimal)
Authentication Methods
SSH Keys (Recommended)
Advantages:- No password needed
- More secure
- Works with all Git services
- Easy to manage
HTTPS with Token
Advantages:- Works through firewalls
- No SSH setup needed
- Easy to revoke
- Generate personal access token
- Use token as password
- Save in credential manager
OAuth (Coming Soon)
Advantages:- No manual token management
- Automatic refresh
- Revocable access
- GitHub OAuth
- GitLab OAuth
Data Synced
Collections
All API collections are synced:Environments
Environment variables (except secrets):Settings
Workspace settings:Not Synced
The following are NOT synced:- History - Request history stays local
- Secrets - Secret environment variables
- Local State - UI state, window position, etc.
- Cache - Temporary data
Sync Modes
Auto Sync
Continuous Synchronization:- Runs at configured interval
- Automatic commit and push
- Background operation
- Minimal user interaction
Manual Sync
User-Controlled:- Click “Sync Now” button
- Keyboard shortcut:
Cmd/Ctrl + Shift + S - Review changes before pushing
- More control over timing
- Sensitive changes
- Large refactoring
- Experimental work
- Offline work
Hybrid Mode
Best of Both:- Auto-commit locally
- Manual push to remote
- Review before sharing
- Automatic pull from remote
Conflict Resolution
When Conflicts Occur
Conflicts happen when:- Same file modified by multiple people
- Changes made offline by different team members
- Concurrent edits to same collection
Resolution Process
Resolution Strategies
Keep Local:- Use your changes
- Discard remote changes
- Fast and simple
- Risk: lose team changes
- Use team changes
- Discard your changes
- Fast and simple
- Risk: lose your work
- Automatic merge when possible
- Combines both changes
- Works for non-overlapping changes
- May still need manual review
- Review both versions
- Choose what to keep
- Edit directly if needed
- Most control, most time
Best Practices
Commit Messages
Auk auto-generates descriptive messages:Sync Frequency
Choose Based on Team Size:| Team Size | Recommended Interval |
|---|---|
| Solo | 30-60 minutes |
| 2-5 people | 15-30 minutes |
| 6-10 people | 5-15 minutes |
| 10+ people | 5 minutes |
Branch Strategy
Main Branch:- Stable, tested collections
- Production-ready
- Protected from direct pushes
- New API endpoints
- Experimental changes
- Large refactoring
dev- Developmentstaging- Stagingprod- Production
Communication
Before Major Changes:- Notify team
- Create feature branch
- Document changes
- Request review
- Sync immediately
- Notify team
- Update documentation
- Test thoroughly
Troubleshooting
Common Issues
Authentication Failed:- Check SSH keys or token
- Verify permissions
- Test Git connection
- Pull latest changes first
- Resolve conflicts
- Try again
- Check network connection
- Reduce sync frequency
- Use shallow clone
- Archive old collections
- Split into multiple workspaces
- Use Git LFS for large files
Next Steps
Setup Git
Configure Git sync for your workspace
Authentication
Setup SSH keys or access tokens
Conflict Resolution
Learn how to resolve conflicts
Best Practices
Team collaboration best practices