Where did the staging area go?

There is no git add, and why that turns out to be fine.

Written By Dustin

Last updated 31 minutes ago

TOVIO has no staging area. Your working copy is continuously snapshotted into the current change, so by the time you run tovio commit, what you edited is already there.

tovio add   # exists, does nothing, and tells you so

The consequence people trip over first: tovio commit takes no path arguments. There is no tovio commit <file>. A commit is the whole working copy, every time.

What replaces the things you used staging for

You used toNow
Commit part of your workCommit it all, then tovio change split --paths <glob>. That carves the matching files into a fresh sub-change that lands on its own. The change must be a lane tip.
Review before committingtovio diff shows the working copy against the last commit — the same review, one step earlier.
Keep junk out of a commit.tovioignore, which uses gitignore syntax. Its defaults are not gitignore's, though: see the dotfile article.
StashNothing. tovio switch does a safe three-way checkout and carries uncommitted work with you.
Fixup commitstovio change absorb folds fixups back into the changes that own those files.
Unstage a filetovio restore <file> throws away uncommitted edits to one path. It rewrites no history.

Why it was removed

The staging area is a second, invisible copy of your work that can disagree with both your files and your history. Most of its uses are better served by operations on committed changes, which are visible, named, and undoable. The cost is that you commit slightly more often; the benefit is that nothing is ever hiding in an index you forgot about.