$ catena status
connection lost
$ catena reconnect
attempting to reach server...
server unreachable.
CATENA.

Patch-based version control for teams that ship.

No branches. No merges. Just patches, applied in order.

How Catena works

01

Draft

Edit your files and capture the change as one immutable patch — author, dependencies and targets included.

02

Propose

Submit the patch. Catena checks it against every other open patch for overlaps — deterministically, before anything lands.

03

Accept

A maintainer accepts it and the patch is applied to the trunk. One source of truth, always buildable.

$ catena draft -m "add login form" --sync
patch 38091ef2 created · 3 files
$ catena propose 38091ef2
$ catena accept 38091ef2
trunk updated.

Public Projects

+

Patch-Chain

Immutable, append-only patches. Every change is a first-class object with author, dependencies, and targets.

~

Overlap Detection

Deterministic conflict detection before merge. No surprises, no broken builds. Auto-apply when safe, block when not.

>

Views, not Branches

Trunk is the only truth. Proposed patches are candidates, not parallel universes. Accept what's ready, revert what's not.

Frequently asked

What is Catena?

Catena is a patch-based version control system. Instead of branches and merges, every change is an immutable patch that moves through a maturity lifecycle — draft, proposed, accepted — and is applied to a single trunk.

How is Catena different from Git?

Git tracks snapshots across branches that you later merge. Catena has no branches and no merge step: proposed patches are checked for overlap deterministically and applied to the trunk in order, so there are no surprise merge conflicts.

Does Catena replace Git?

Catena is an online-first alternative aimed at small teams that want a simpler model. It is operated entirely through the catena CLI and a web UI, with a single server — no branch management to maintain.

Is Catena free?

Yes. Catena is free to self-host and ships as a single Docker container.