Core concepts
The vocabulary of Nexa and Rinko Hub, defined once and in dependency order: repositories, versions, branches, workspaces and working contexts.
Four words carry most of the meaning in Nexa: repository, version, branch and workspace. Three of them exist in Git with the same spelling and a different meaning, which is the main reason this section exists. Reading the three pages in order takes about ten minutes and is the fastest route to understanding why the commands are shaped the way they are.
Reading order
Each page defines its terms using only terms defined before it, so the order is a dependency order rather than a preference:
- Repositories and versions — what is stored, and what a version actually is. Start here; everything else builds on it.
- Branches and workspaces — the candidate model. This is the page that matters most, and the one that diverges furthest from Git.
- The Development Root model — how all of that maps onto directories on your disk.
The shortest summary
A repository is one object database, one set of references, and one unit of synchronisation. Everything inside it is stored as immutable, content-addressed objects: an object's identifier is the hash of what it contains, so nothing is ever modified in place and correction means adding a new object rather than rewriting an old one.
A version is a complete state of a tree, plus who recorded it and when. It is
not a delta against its parent, and there is no staging area to assemble one in — nexa record captures the working tree as it stands.
A branch holds a set of competing candidates rather than a single pointer. Several versions can answer the same question at once, and choosing between them supersedes the alternatives without deleting them. A workspace is a context inside a branch where those competing versions coexist.
A working context is one repository, branch and workspace materialised as an ordinary directory beneath your Development Root — the single folder that holds all your active work.
Because objects are immutable and history only ever grows, nothing you record can be destroyed by someone else's later work. And because a branch holds candidates rather than a pointer, two people — or a person and an AI tool — attempting the same task produce two answers to choose between, not a collision to resolve before either can be stored.
Every term above is defined once, in full, on the page that owns it. The glossary defines each of them independently if you would rather look one up than read the section through.