repo:pull

Fetch and atomically apply hosted history over the network, preserving boundary references and removing departed nodes while reporting each target_repository_id.

Reference for flywheel repo:pull.

Bring the persisted hosted projection v4 history forward into the local graph, preserving boundary references and atomically removing departed nodes while reporting each target_repository_id. When the hosted head has not moved but its rows have (for example, a parent node and its artifacts handed over when another repository retired), a clone with no unpublished local commits installs the current rows; with unpublished commits, the first pull after repo:push does. An existing repository requires membership with a sufficient role: 403 repository_forbidden uses CLI exit 3. Missing and retired repositories return 404 repository_not_found. To add your own node under a readable parent without joining its repository, run flywheel hosted:node:create --parent <node_id> --title 'My addition'; without a write role there, it lands in your fork.

If the server returns HTTP 426, the CLI prints http_error, with client_version_unsupported or repository_snapshot_format_unsupported in server_response.body.detail (or its type field); run flywheel update --yes and retry; no local state changed. If a hosted request fails during the pull (the connection is refused or drops, the request times out, the answer can't be read, or HTTP 408, 429, 502, 503 or 504 is still the answer after the CLI's retries), the error keeps its code and adds step, either pull_transfer (downloading the hosted changes) or object_download (downloading the artifact objects with --objects all), and next_action, the same command with the same arguments under the --idempotency-key it ran with. Run it once the hosted service can be reached again. The key names only this checkout's record of the pull, so the rerun starts a fresh transfer. A hosted repository_busy answer gets a step and this next_action too, and keeps its code repository_busy. Other recognized hosted refusals keep their HTTP-kind code (http_error, auth_error, transport_error, timeout, response_error or policy_blocked) and refusal-specific next_action, with no step. For example, HTTP 409 repository_head_mismatch prints http_error; its hosted identifier is in server_response.body.detail (or its type field), not error.code.

Command Group

Local Repository

Summary

Fetch and atomically apply hosted history over the network, preserving boundary references and removing departed nodes while reporting each target_repository_id.

Usage

flywheel repo:pull [FLAGS]

Required flags

None.

Optional flags

FlagValueDefaultChoicesDescription
--repostringLocal repository filesystem path.
--personalUse the configured personal repository.
--objectsstringlazy, allObject transfer mode: lazy defers artifact bytes for repo:artifact:download; all downloads every reachable object.
--formatFORMATjson, tsv, csv, tableOutput format for command results.
--envPROFILEUse a configured CLI profile for this invocation.
--outPATHWrite output to a file path, or use - for stdout.
--openOpen browser-bound URLs when supported.
--no-retryDisable transient-error retries.
--retry-maxNMaximum transient-error retry attempts.
--waitBlock on async operations until a terminal state is reached.
--wait-timeoutSECONDS600Seconds to wait for --wait before timing out. Defaults to 600.
--allow-selfAllow mutating the currently active credential.
--timeoutSECONDSSet the per-request timeout budget in seconds.
--idempotency-keyKEYReuse an Idempotency-Key so ambiguous write failures can be retried with the same key.
--forceForce safety-gated operations where supported.
--yesSkip confirmation prompts for destructive operations.
--debugPrint structured request debugging with secrets masked.
--verbosePrint verbose progress for long-running operations.
-h, --helpShow this help.

Examples

Fetch and atomically apply hosted history over the network, preserving boundary references and removing departed nodes while reporting each target_repository_id.

flywheel repo:pull --format=json