Large File Storage (LFS)

GitForest includes decentralized large file storage for sharing ML model weights, datasets, and other big artifacts over the P2P network — think Git LFS, but fully decentralized with BitTorrent-style distribution.

How it works

  1. Content-addressed blobs — files are hashed (SHA-256) and stored outside git. The hash is the file's identity on the network.
  2. Adaptive chunking — files are split into pieces for parallel download and verification:
    • < 100 MB: 256 KB pieces
    • 100 MB – 1 GB: 1 MB pieces
    • >= 1 GB: 4 MB pieces
  3. Piece verification — each piece is verified against its hash as it arrives (BitTorrent-style), so corrupted transfers are detected and retried automatically.
  4. Seeding — peers who hold a blob seed it for others; seeder/leecher counts are the organic quality signal.

Blob commands

$ gitforest blob add ./model-weights.bin
$ gitforest blob list
$ gitforest blob info <id>          # size, pieces, path
$ gitforest blob pointer <id>     # generate a git pointer file
$ gitforest blob remove <id>

Pointer files

Instead of committing big binaries into git history, commit a tiny pointer file that references the blob by hash:

version https://gitforest.net/lfs/v1
oid sha256:<blob_id>
size <bytes>

Anyone cloning the repo can fetch the referenced blob from the P2P network on demand.

Collections (models & datasets)

Group many blobs into a named, versioned collection manifest — perfect for ML model weights, dataset bundles, or release artifacts:

$ gitforest collection create --name my-dataset --blobs <id1>,<id2>
$ gitforest collection list
$ gitforest collection info <id>

Use cases

Next: Compute Marketplace All docs