Multi-Device Workflow
The complete flow from initial setup to daily syncing across machines.
This guide walks through the entire lifecycle of using dotweave — from setting up your first machine to keeping multiple devices in sync every day.
Initial setup on Machine A
Section titled “Initial setup on Machine A”-
Initialize dotweave
dotweave init ~/dotfilesThis creates a Git-backed sync directory at
~/dotfiles. -
Track your files
dotweave track ~/.gitconfigdotweave track ~/.config/starship.tomldotweave track ~/.ssh/config --secretEach command adds an entry to
manifest.jsoncinside the sync directory. -
Push local files into the sync directory
dotweave push -
Commit and push to a remote
dotweave never creates Git commits for you — you stay in full control:
dotweave cd # opens a shell inside the sync directorygit add -A && git commit -m "initial sync"git remote add origin git@github.com:you/dotfiles.gitgit push -u origin mainexit
Setting up Machine B
Section titled “Setting up Machine B”-
Initialize from the remote URL
dotweave init ~/dotfiles --url git@github.com:you/dotfiles.git -
Pull files to their local paths
dotweave pulldotweave reads
manifest.jsonc, resolves platform-specific paths, decrypts any secrets, and writes every file to the correct location.
Daily workflow
Section titled “Daily workflow”Once both machines are set up, the day-to-day flow is short and predictable.
On the machine where you made changes:
dotweave pushdotweave cdgit add -A && git commit -m "update shell aliases"git pushexitOn the other machine:
dotweave cdgit pullexitdotweave pullHandling conflicts
Section titled “Handling conflicts”The sync directory is a regular Git repository, so conflicts are resolved the usual way:
dotweave cdgit pull # may report merge conflicts# resolve conflicts in the affected filesgit add -A && git commit -m "resolve merge conflict"git pushexitdotweave pull # apply the resolved state locallyChecking health
Section titled “Checking health”dotweave doctorThis verifies the sync directory exists, Git is configured, encryption keys are in place, and tracked paths are accessible.
Adding more machines
Section titled “Adding more machines”Adding a third (or fourth, or fifth) machine follows the same steps as
Machine B — dotweave init with the remote URL, then dotweave pull. From
there the daily push/pull cycle is identical on every device.
Quick reference
Section titled “Quick reference”| Task | Commands |
|---|---|
| Preview changes | dotweave status |
| Send local edits upstream | dotweave push → git add -A && git commit → git push |
| Receive upstream edits | git pull → dotweave pull |
| Resolve conflicts | dotweave cd → fix files → git commit → git push |
| Check setup health | dotweave doctor |