It feels like version control has been plagued by an early historical mistake: the confusion between the developer's branch and the main branch or trunk.
In fact, the choice of a top down rather than a bottom up perspective. Developers will produce successive versions, and want to keep a backup of the intermediate steps, while focusing on the current (so far ultimate) state. This produces a natural concept of branch.
But why make this the model of the collaboration space? There on the contrary, one wants to be protected from wild changes: unstability, jeopardy. Changes require an explicit approval, from every user, unless they choose to delegate it. This approval would take the shape of a label rather than of a branch.
29 June 2026