# snapdir push Push a snapshot to a store given its path or a staged manifest ID. `push` uploads the snapshot's manifest and objects to a `--store`. You can push a directory directly, or push an already-staged snapshot by `--id`. ## Usage ```text snapdir push [OPTIONS] [PATH] ``` ### Arguments | Argument | Description | | --- | --- | | `[PATH]` | Directory to push (omit when using `--id`). | ### Options `push` accepts the [global options](overview.md#global-options). The most relevant are `--store` (destination), `--id` (push a staged snapshot), and the transfer-tuning flags `-j`/`--jobs`, `--limit-rate`, and `--adaptive`. ## Examples Push the current directory to an S3 store: ```console snapdir push --store s3://my-bucket/snapshots . ``` Push an already-staged snapshot by ID, rate-limited: ```console snapdir push --id 1220abc... --store file:///srv/backups --limit-rate 10M ``` ## See also - [`snapdir fetch`](snapdir-fetch.md) — download a snapshot into the cache - [`snapdir pull`](snapdir-pull.md) — fetch and check out in one step - [`snapdir sync`](snapdir-sync.md) — copy directly between two stores - [Pushing and pulling guide](../guide/pushing-pulling.md) - [Stores guide](../guide/stores.md)