Branch
A named pointer at a version of a document, not a copy of the content. Branches let designers propose changes without disturbing the canonical doc.
A branch in Gameframe is a lightweight pointer at a specific version of a document — not a copy of the content. Creating a branch does not duplicate a single byte. The branch simply records a name and an identifier for the version it currently points at. Every new save against that branch advances the pointer to the new version.
This architecture makes branches cheap. The expected workflow is one branch per speculative change: rename a mechanic, rebalance a system, prototype an alternate act structure. None of that touches the canonical main branch until a merge request is reviewed and merged.
The comparison to software branching is intentional. Git users will recognize the model immediately. The difference is that Gameframe’s branching is designed for prose documents and structured GDDs rather than code — the diff view shows paragraph-level changes, cell-level changes in balance tables, and section additions or removals in a readable format rather than a raw line-diff.
How it works in Gameframe
Create a branch from any document page. Name it after the change you are proposing — balance/smg-falloff, narrative/act-three-rewrite, systems/loot-table-v2. Work against it until the change is ready. When it is, open a merge request: describe the change, assign reviewers, run Specialist Reviews. Once all checks pass, merge. The canonical document advances to include your change, and the branch record stays in history with the full context of why the decision was made.
Branches and merge requests are available on all Gameframe plans.