Skip to main content

What is Git-Semantic Version Control?

Git-Semantic version control lets you track every change to your context tree — the knowledge base that your AI agents rely on. Save snapshots of your context, undo mistakes, experiment on branches, and optionally share with your team via the cloud. If you’ve used Git before, you’ll feel right at home — the commands map directly. If you haven’t, don’t worry: the workflow is simple and the guides walk you through each step.
No account required for local use. Git-Semantic works entirely on your machine — no login, no cloud account, no remote space needed. Initialize with brv vc init, then save, branch, and merge freely. Cloud sync (push, pull, fetch, clone) is optional and requires a ByteRover account and a remote space.

How It Works

Git-Semantic operates on your .brv/context-tree/ directory — the hierarchical knowledge base that stores your project’s domains, topics, and subtopics. It tracks changes using a model similar to Git:
  • Working tree — The current state of your context tree files on disk
  • Staging area — A holding area where you prepare changes before saving them
  • Commit history — A chain of saved snapshots, each recording what changed, when, and by whom
  • Branches — Independent lines of work, so you can experiment without affecting the main context
  • Remote — ByteRover cloud, for syncing context across machines and team members (optional)

Git vs Git-Semantic

If you know Git, the commands map directly. If you’re new to version control, the Getting Started guide walks you through each one.
GitGit-Semantic (CLI)Git-Semantic (TUI)
git initbrv vc init/vc init
git configbrv vc config/vc config
git clone <url>brv vc clone <url>/vc clone <url>
git add .brv vc add ./vc add .
git commit -m "msg"brv vc commit -m "msg"/vc commit -m "msg"
git statusbrv vc status/vc status
git logbrv vc log/vc log
git resetbrv vc reset/vc reset
git branchbrv vc branch/vc branch
git checkoutbrv vc checkout/vc checkout
git mergebrv vc merge/vc merge
git remotebrv vc remote/vc remote
git fetchbrv vc fetch/vc fetch
git pullbrv vc pull/vc pull
git pushbrv vc push/vc push

Why Version Control for Context?

Your context tree evolves alongside your codebase. Without version control, changes are invisible and irreversible. With it, you get:
  • Full history — See what changed, when, and by whom. Every save (called a “commit”) records the author, timestamp, and a descriptive message.
  • Safe experimentation — Create a branch to try a different context structure. If it doesn’t work, switch back — your main context is untouched.
  • Team collaboration — Multiple people can curate context in parallel, then merge their work together. ByteRover detects conflicts when the same file is edited by two people.
  • Undo mistakes — Made a change that degraded your agent’s context quality? Roll back to a previous commit to restore what worked.
  • Cloud sync — Optionally push context to ByteRover cloud and pull it on another machine, keeping your team aligned on a single source of truth.

CLI vs TUI

All 15 version control commands are available in two modes:
Run commands directly from your terminal. Best for scripting, automation, CI/CD pipelines, and headless environments.
brv vc status
brv vc add .
brv vc commit -m "add authentication patterns"
brv vc push
CLI commands follow the pattern: brv vc <subcommand> [args] [flags]
Both modes support the same subcommands, flags, and arguments. Key differences:
FeatureCLITUI
ExecutionSingle command, returns outputInteractive guided flow
Clone without URLRequires URL argumentOpens interactive space picker
Error displayPrinted to terminalInline error messages in flow
Best forAutomation, scripting, CI/CDInteractive daily use

Available Commands

Commands are organized into four groups. The first three groups work entirely locally — no account, no internet, no remote space required. Only the Remote Sync group requires a ByteRover account and a remote space.

Setup

CommandDescriptionRequires login?
vc initInitialize version control for a spaceNo
vc configGet or set commit author identity (per-space)No

Staging & History

CommandDescriptionRequires login?
vc addStage files or directories for the next commitNo
vc commitSave staged changes as a commit with a messageNo
vc statusShow working tree status — staged, unstaged, untracked filesNo
vc logShow commit history with SHA, author, and timestampsNo
vc resetUnstage files, or undo commits with --soft/--hardNo

Branching & Merging

CommandDescriptionRequires login?
vc branchList, create, delete branches, or set upstream trackingNo
vc checkoutSwitch to a branch, or create and switch with -bNo
vc mergeMerge a branch, continue after conflicts, or abortNo

Remote Sync (requires login + remote space)

CommandDescriptionRequires login?
vc cloneClone a remote space from ByteRover cloudYes
vc remoteShow, add, or update the remote connection (origin)No *
vc fetchDownload refs from ByteRover cloud without mergingYes
vc pullFetch and merge remote changes (fetch + merge)Yes
vc pushUpload local commits to ByteRover cloudYes
* vc remote itself doesn’t require authentication — it only configures the remote URL locally. Authentication is checked when you actually communicate with the remote (push, pull, fetch, clone).

Next Steps

Getting Started

Initialize version control, configure your identity, and clone your first space

Staging & Committing

Stage changes, create commits, view history, and undo mistakes

Branching & Merging

Work in parallel with branches and resolve merge conflicts

Remote Sync

Push, pull, and sync context with ByteRover cloud