Bram Cohen Thinks Version Control Needs a Do-Over

2 min read 1 source explainer

Bram Cohen — yes, the BitTorrent inventor — has published a lengthy design manifesto called 'Mañana' that lays out what he considers a coherent vision for the future of version control. The post landed on Hacker News with a score of 180 and sparked the kind of debate that only VCS discussions can.

Cohen's core argument: Git won the version control wars not because its model is ideal, but because it was good enough at the right time. The accumulated complexity — rebasing, cherry-picking, the index, detached HEAD states — isn't incidental. It's the consequence of design decisions that optimized for Linus's kernel workflow and then got bolted onto everything else. Cohen contends that a ground-up rethink, informed by decades of real-world usage patterns, could produce something fundamentally better.

This isn't Cohen's first rodeo with VCS. He previously worked on a revision control system and has long been vocal about merge algorithms and directed acyclic graph structures. The 'Mañana' vision reportedly tackles several pain points that practitioners deal with daily: the mental model mismatch between how developers think about changes and how Git represents them, the difficulty of correct merges in complex branch topologies, and the lack of first-class support for workflows that have become standard (stacked diffs, patch-based review, monorepo operations).

The timing is notable. We're in a period where Git alternatives and wrappers are gaining real traction. Jujutsu (jj) has built a dedicated following by rethinking the staging area and undo model while remaining Git-compatible. Sapling (from Meta) took a similar approach. Pijul built on a mathematically sound patch theory. GitButler is reimagining the client layer. Each of these projects validates Cohen's premise: developers are working around Git's model, not with it.

The skeptic's view is equally strong, though. Git's dominance isn't just network effects — it's the entire ecosystem. GitHub, GitLab, CI/CD pipelines, code review tools, IDE integrations, and decades of muscle memory. Any successor doesn't just need to be better; it needs to be so much better that it justifies the migration cost for millions of developers and thousands of organizations. That's a bar that no VCS has cleared since Git itself displaced Subversion.

Cohen has the technical credibility to make this argument — BitTorrent's distributed architecture shares conceptual DNA with distributed version control. Whether 'Mañana' becomes a real project or remains an influential design document, it's a useful forcing function for the VCS community to articulate what 'better' actually means.

For working developers: you don't need to do anything yet. But if you haven't looked at jj or GitButler recently, Cohen's manifesto is a good prompt to evaluate whether your Git workflow is serving you or whether you're serving it.

Hacker News 640 pts 361 comments

A Coherent Vision for the Future of Version Control

→ read on Hacker News
ulrikrasmussen · Hacker News

The thing about how merges are presented seems orthogonal to how to represent history. I also hate the default in git, but that is why I just use p4merge as a merge tool and get a proper 4-pane merge tool (left, right, common base, merged result) which shows everything needed to figure out why there

theknarf · Hacker News

You can't use CRDTs for version control, having conflicts is the whole point of version control. Sometimes two developers will make changes that fundamentally tries to change the code in two different ways, a merge conflict then leaves it up to the developer who is merging/rebasing to make

Koshkin · Hacker News

What's currently missing from the automatic conflict resolution is intelligence. The AI doing merges is the future.

radarsat1 · Hacker News

Is it a good thing to have merges that never fail? Often a merge failure indicates a semantic conflict, not just "two changes in the same place". You want to be aware of and forced to manually deal with such cases.I assume the proposed system addresses it somehow but I don't see it in

barrkel · Hacker News

I don't really get the upside of focus on CRDTs.The semantic problem with conflicts exists either way. You get a consistent outcome and a slightly better description of the conflict, but in a way that possibly interleaves changes, which I don't think is an improvement at all.I am completel

// share this

// get daily digest

Top 10 dev stories every morning at 8am UTC. AI-curated. Retro terminal HTML email.