Cloud Storage Protocol
Git remote helper for cloud object storage.
Crab's remote helper protocol bridges Git and your cloud bucket. Push and pull repositories to S3, GCS, or Azure using standard Git commands — no servers, no endpoints, no infrastructure to manage.
Supported Cloud Providers
First-class support for the three major cloud object storage platforms.
Amazon S3
Native S3 integration with multipart uploads, server-side encryption, and IAM-based access control. Works with any S3-compatible endpoint.
Google Cloud Storage
First-class GCS support with resumable uploads, service account authentication, and automatic region selection.
Azure Blob Storage
Full Azure Blob support with managed identity authentication, block blob uploads, and tiered storage compatibility.
Remote Helper Protocol
How Git communicates with cloud storage through Crab.
Push Pipeline
From local commits to cloud storage in five steps.
1
Enumerate Pointers
Scan committed pointer blobs to identify files that need to be pushed to cloud storage.
2
Chunk & Dedup
Content-defined chunking splits files into variable-size chunks. 3-tier dedup eliminates redundant data.
3
Pack Xorbs
New chunks are packed into compressed xorb objects (~64 MiB batches) for efficient transfer.
4
Upload & Index
Xorbs are uploaded to your bucket. Shard and file indexes are updated atomically.
5
Update Refs
Ref CAS (compare-and-swap) ensures safe concurrent pushes. Manifests are updated last.
Pull Pipeline
Efficient fetch and reconstruction from cloud storage.
1
Fetch Refs
Download the latest manifest and ref pointers from cloud storage.
2
Resolve Pointers
Map pointer blobs to file-index entries, then to shard locations and xorb chunks.
3
Download Xorbs
Fetch only the xorb chunks needed for the requested files. Range requests minimize bandwidth.
4
Reconstruct
Reassemble byte-identical files from chunks, verified by Blake3 hash. Lazy checkout defers until hydration.
Connect your repositories to the cloud
Start using Crab's remote helper to push and pull Git repositories directly to cloud object storage. No servers required.