devsync track
Register local files or directories as sync targets.
Synopsis
Section titled “Synopsis”devsync track <path> [<path>...]Description
Section titled “Description”devsync track registers one or more local paths in manifest.json so that devsync knows to include them in future push and pull operations.
Paths must reside under your home directory ($HOME). They are stored in the manifest as home-relative paths and are resolved back to absolute paths at runtime.
If a path is already tracked, running track again updates its mode and profile assignments without creating a duplicate entry.
Repository artifacts are stored at ~/.config/devsync/sync/{profile}/{relative-home-path} (or at the root level for entries not assigned to a profile).
Arguments
Section titled “Arguments”| Argument | Description |
|---|---|
path | One or more absolute or ~-prefixed paths to track. At least one path is required. |
Options
Section titled “Options”| Flag | Description |
|---|---|
--mode normal|secret|ignore | Sync mode for the path. Defaults to normal. |
--profile NAME | Assign the entry to a named profile. Can be repeated to assign to multiple profiles. Omit to create a global entry (synced regardless of active profile). |
--verbose | Print detailed output. |
Sync modes
Section titled “Sync modes”| Mode | Description |
|---|---|
normal | Stores the file or directory content as-is in the repository. |
secret | Encrypts the file with age before writing to the repository. The artifact is stored as {filename}.devsync.secret. The original file is never written to the repository unencrypted. |
ignore | Registers the path in the manifest but skips it entirely during push and pull. Useful for acknowledging a path without syncing it. |
Examples
Section titled “Examples”# Track ~/.gitconfig with the default (normal) modedevsync track ~/.gitconfig# Track several dotfiles at oncedevsync track ~/.gitconfig ~/.zshrc ~/.tmux.conf# Track an SSH private key — encrypted before storing in the repodevsync track ~/.ssh/id_ed25519 --mode secret# Track VS Code settings only for the "work" profiledevsync track ~/.config/Code/User/settings.json --profile work# Track an entire config directorydevsync track ~/.config/nvim# Track the whole .ssh directory normally, but encrypt the private keydevsync track ~/.sshdevsync track ~/.ssh/id_ed25519 --mode secret