GitFuse CLI documentation

Commands for moving commits between machines.

GitFuse syncs local Git commit objects across devices without forcing you to push unfinished WIP commits to GitHub. This docs page covers the frontend command reference and can later be wired to live backend-generated API documentation.

Recommended flowInstall → authenticate → add repo → sync → pull elsewhere.
$ gitfuse auth login$ gitfuse add .$ gitfuse sync

Quick start

Set up GitFuse in four commands.

Install the CLI, authenticate your device, add the current repository, and sync your first local commit bundle.

Install the CLI$ brew install gitfuse
Authenticate your device$ gitfuse auth login
Track current repository$ gitfuse add .
Sync private commits$ gitfuse sync

Installation

Install with the public platform commands.

These commands are the public contract. External Homebrew and Winget acceptance, DNS, and endpoint publication must be verified separately before they are described as live.

macOS install$ brew install gitfuse
Windows install$ winget install gitfuse
Linux install$ curl -fsSL https://install.gitfuse.dev | sh

Authentication

Connect a machine to your GitFuse workspace.

Authentication is GitHub or Google based, but your GitFuse dashboard account, devices, and sync history remain separate.

Start auth flow$ gitfuse auth login
Start headless auth flow$ gitfuse auth login --headless
Show current identity$ gitfuse auth whoami
Remove local session$ gitfuse auth logout

Repositories

Choose which repositories GitFuse should track.

A repository must be explicitly added before local commits can be bundled and moved through the private relay.

Add current repository$ gitfuse add .
List tracked repositories$ gitfuse repo list
Remove repository$ gitfuse repo remove <repo>
Choose active repository$ gitfuse repos
Set active repository$ gitfuse use <name>

Sync workflow

Move work in progress without publishing it.

Sync from one machine, then pull on another machine to continue with the same local history.

Create private bundle$ gitfuse sync
Preview sync$ gitfuse sync --dry-run
Pick commits interactively$ gitfuse sync --pick
Sync all commits$ gitfuse sync --all
Pull synced commits$ gitfuse pull
Pull into a new branch$ gitfuse pull --as-branch <branch>
Sync rebased history$ gitfuse rebase-sync

Status & history

Inspect repository and relay state.

Use status and history commands to understand what is tracked, what is pending, and what has already moved through the relay.

Repository status$ gitfuse status
All tracked repository statuses$ gitfuse status --all
Recent relay history$ gitfuse history
Legacy history alias$ gitfuse log

Devices

View and manage connected machines.

Device commands show which machines are connected to your GitFuse workspace and allow a registered device to be revoked.

List connected devices$ gitfuse devices
Revoke a device$ gitfuse devices revoke <id>

Auto sync

Control automatic sync.

Enable, disable, and inspect automatic sync for the active repository from the same command group.

Show auto sync status$ gitfuse autosync status
Enable auto sync$ gitfuse autosync enable
Enable with delay$ gitfuse autosync enable --delay 5s
Disable auto sync$ gitfuse autosync disable
Legacy start command$ gitfuse start --auto

Pause & resume

Temporarily stop or restart sync.

Pause prevents GitFuse from syncing, while resume returns the repository to normal synced operation.

Pause sync$ gitfuse pause
Pause until an event$ gitfuse pause --until <event>
Resume sync$ gitfuse resume
Resume from recent commits$ gitfuse resume --from <count>

Recovery

Recover or repair repository state.

Recovery commands are useful when restoring a project, claiming transferred work, or correcting relay-side commit state.

Restore from relay bundles$ gitfuse restore <relay-entry-name>
Claim transferred folder$ gitfuse claim
Connect to existing relay repos$ gitfuse connect
Reverse last sync event$ gitfuse undo
Drop relay-side commit$ gitfuse drop
Inspect local setup$ gitfuse doctor

Account & config

Inspect account limits and local CLI configuration.

These commands help users confirm their current plan, config directory, installed version, and available updates.

Show account limits$ gitfuse limits
Show config directory$ gitfuse config-dir
Show CLI version$ gitfuse version
Check for updates$ gitfuse update

Legacy helpers

Compatibility commands kept for older workflows.

These commands remain available for users who started with the earlier CLI contract.

Initialize and register$ gitfuse init
Open interactive pickers$ gitfuse pick
Push curated commits$ gitfuse push
Choose repository alias$ gitfuse repos
History alias$ gitfuse log
Automation alias$ gitfuse start