Platform

Git Repos

brintOS repositories come in three flavors: machine images you can boot, cloud storage you can use, and git repositories you can clone. A git repo on brintOS is a real bare repository — push and pull with the stock git client over HTTPS or SSH, browse it in a web UI you already know how to use, and store it on the same durable, deduplicated cloud storage that backs every machine on the platform.

Stock git, no client-side tricks

There is no proprietary CLI, no wrapper, no agent to install. The server speaks git's smart protocol — protocol v2, delta negotiation, shallow and partial clones, force pushes, branch deletion — so everything you do with git today works unmodified:

git clone https://brintos.io/owner/repo.git
git clone git@git.brintos.io:owner/repo.git

Under the hood, pushes and fetches are handled by genuine git upload-pack and git receive-pack — not a reimplementation — so behavior matches what your client expects down to the error messages. Every ref update is serialized through a write lease, and a push only succeeds after the pack and refs are durably stored.

Two transports, your choice

  • HTTPS. Clone public repos anonymously with no account at all. To push, or to read a private repo, authenticate with a personal access token as the password — tokens are scoped, so a repo:read token can fetch but never push.
  • SSH. Add your public key under Settings → SSH keys and use git@git.brintos.io remotes — no token to manage, and your private key never leaves your computer. Ed25519, RSA (≥ 2048 bits), ECDSA, and sk- hardware security keys are all accepted. SSH access is git-only: connections can run the two git service commands and nothing else — no shell, no port forwarding, no file transfer. See the Git over SSH guide for setup and host key fingerprints.

Private repositories don't leak their existence: an unauthenticated request gets a clean 401, and an authenticated user without access sees the same "not found" as a repo that was never created.

A code browser, not just a bucket of objects

Every git repo gets a full web view at brintos.io/owner/repo:

  • File tree and blobs. Browse any branch or tag, with syntax highlighting, rendered Markdown, and your repo's README displayed on the overview page.
  • Commit history. A Commits tab walks the history of any ref, straight from the object graph.
  • Go to file. Press t anywhere in the repo to fuzzy-search every path at the current ref.
  • Commit from the browser. Create or upload files in the web UI and they land as a real commit on the branch — handy for a quick README fix without a checkout.
  • First-push onboarding. An empty repo shows copy-paste recipes for both HTTPS and SSH, so going from git init to a first push takes seconds.

Collaboration built in

Git repos share the platform's full collaboration surface with machine images: issues, discussions, a wiki, stars, watching, topics, and one-click forks. Insights views compute contributor activity, commit frequency, and the fork network on demand from the repository itself. Repos can be owned by your personal account or by an organization, with the same role-based permissions either way.

The same storage that boots machines

A git repo's objects live on the identical substrate as machine image filesystems: content-addressed, SHA-256-deduplicated blobs in replicated object storage, transparently compressed, with public content served from a global CDN. There's no separate "git tier" with separate semantics — the same durability, the same dedup across forks, the same storage quota on your plan. Server-side maintenance runs automatically: repositories are repacked and refs consolidated on a schedule, so clones stay fast without you ever running git gc.

Visibility and pricing

  • Public repos are free. Unlimited public git repositories on every plan, including Free — and cloning public content doesn't count against anyone's bandwidth.
  • Private and internal repos are available on paid plans. Internal visibility shares a repo with everyone in your organization without making it public.
  • No per-repo limits. Repos count against your plan's cloud storage allowance (10 GB on Free, up to 1 TB+ on paid plans), not against a repository quota.

What's not here yet

We'd rather tell you now than surprise you mid-migration: per-repo deploy keys, protected branches, and push webhooks aren't supported yet. They're on the roadmap — if one of them is the thing blocking you, tell us and we'll prioritize accordingly.

Start in thirty seconds

  1. Create a repository and pick Git repository.
  2. Choose a default branch, and seed a README or start truly empty.
  3. Push: copy the HTTPS or SSH recipe from the repo page, or follow the SSH setup guide.