Explicit staging
Stage full files or selected chunks. Keep the staged content stable even if the working file changes later.
Kov is an experimental version control system being designed around explicit actions, clear staged state, understandable history and safe recovery. It is local-first while its core model is being proven.
Kov treats staging as a deliberate plan rather than a temporary mystery. Whole files or selected chunks can be staged, annotated and reviewed before they become history.
If a file changes after it has been staged, Kov keeps the staged version frozen and makes the divergence visible instead of silently replacing it.
# choose what belongs in history $ kov stage chunks app.py # see staged and unstaged changes $ kov status staged: app.py · 2 chunks changed since stage: no unstaged: tests/test_app.py # commit the staged plan $ kov commit
The command surface and storage model are still evolving. These are the principles currently shaping the project.
Stage full files or selected chunks. Keep the staged content stable even if the working file changes later.
Messages can belong to staged items so a single commit can still preserve why individual changes exist.
Reverse by creating a new inverse change instead of quietly rewriting what already happened.
Record the relationship between old and new locations instead of reducing every operation to deletion plus addition.
Represent tracked duplication when one module becomes the basis for another.
Create an inverse change as new history so the record remains intact.
Store link metadata and recreate the link when restoring rather than copying its target.
Hosting, accounts, remotes, push and pull, and collaboration are intentionally not the first milestone. Kov needs to become trustworthy on one machine before the networked layer matters.
Kovheim will eventually sit above that foundation rather than forcing the local model to bend around a hosting site too early.