Documentation menu

Getting started

Create the first folder and hub, then join an empty destination on another machine.

The interactive wizard is the shortest path. It validates the same constraints as automation flags and can install the background service when the initial synchronization succeeds.

Before you start

  • Choose one parent folder whose direct children are Git repositories.
  • Choose a local hub path or an SSH hub path on a trusted machine.
  • Keep hub and peer state outside the synchronized root.
  • Install the same Code Folder Sync version on every participating machine.

Create the folder

Terminal
codefoldersync setup

Choose create, provide the root and hub, give the folder and peer readable names, and allow the filesystem probes to complete. The result prints a folder ID.

Automation can use the same validation path:

Terminal
codefoldersync setup \
  --mode create \
  --root /absolute/path/to/code \
  --hub ssh://user@hub-host/absolute/path/to/hub \
  --name my-code \
  --peer laptop

Join another machine

The destination must be empty. This makes an initial join distinguishable from an untracked local tree and gives interrupted materialization a safe recovery boundary.

Terminal
codefoldersync setup \
  --mode join \
  --folder-id <folder-id> \
  --root /absolute/path/to/empty/code \
  --hub ssh://user@hub-host/absolute/path/to/hub \
  --peer desktop

Verify and start

Terminal
codefoldersync doctor
codefoldersync status
codefoldersync verify --full
codefoldersync service install
codefoldersync service start

verify --full deliberately rehashes the complete tree. It is the authoritative expensive check after a first join, restore, conflict resolution, or incident.