ivaldi upload
Push commits to GitHub.
Synopsis
ivaldi upload [branch] [flags]
Description
Upload the current timeline to GitHub, creating or updating the corresponding branch. Ivaldi automatically converts your commits to Git format and pushes them with visual progress tracking.
Flags
--force- Force push to remote (overwrites remote history - use with caution!)
Prerequisites
- Portal configured:
ivaldi portal add owner/repo - GitHub authentication (token or CLI)
Examples
Basic Upload
ivaldi upload
Uploads the current timeline to GitHub with automatic branch creation and progress tracking.
Upload to Specific Branch
ivaldi upload main
Force Push (Overwrite Remote History)
ivaldi upload --force
Warning: Force push requires confirmation and will overwrite remote history. Use with extreme caution!
Complete Workflow
ivaldi portal add username/my-repo
ivaldi gather .
ivaldi seal "Add feature"
ivaldi upload
What Happens
- Detects changes - Compares local commits with remote state
- Optimizes transfer - Uses delta uploads when possible (only changed files)
- Uploads blobs - Parallel upload of file content to GitHub (with progress bar)
- Creates tree - Constructs Git tree structure
- Creates commit - Generates Git commit with preserved metadata
- Updates reference - Creates or updates the branch on GitHub
Progress Tracking
The upload command provides real-time progress bars for:
- File uploads - Visual progress for uploading blobs to GitHub
- Parallel processing - Shows concurrent upload status (up to 32 workers)
- Completion status - Clear indication of successful upload
Performance Features
- Delta uploads - Only uploads changed files when updating existing branches
- Parallel uploads - Up to 32 concurrent file uploads
- Smart detection - Automatically detects if files have changed
- Rate limit handling - Respects GitHub API rate limits
Authentication
GitHub Token
export GITHUB_TOKEN="ghp_your_token"
ivaldi upload
GitHub CLI
gh auth login
ivaldi upload
Common Workflows
Daily Workflow
# Make changes
ivaldi gather .
ivaldi seal "Daily progress"
ivaldi upload
Feature Branch
ivaldi timeline create feature-x
# ... work ...
ivaldi gather .
ivaldi seal "Add feature X"
ivaldi upload # Creates 'feature-x' branch on GitHub
Related Commands
Comparison with Git
| Git | Ivaldi |
|---|---|
git push |
ivaldi upload |
git push -u origin branch |
ivaldi upload (automatic) |
Troubleshooting
No Portal Configured
Error: no GitHub repository configured
Solution:
ivaldi portal add owner/repo
Authentication Failed
Error: GitHub authentication failed
Solution:
export GITHUB_TOKEN="your_token"
# or
gh auth login