Version control for PCB designs
Most boards are versioned by folder name: rev_b_final, rev_b_final2, rev_b_final_SENT. It works until the fab asks which one they built. This is how to do better without turning every hardware project into a software project.
What a version is
A version is the complete state of the project at one moment: the schematic and layout, the libraries they reference, the 3D models, and the outputs you actually sent to a fab. Half a version is worse than none, because a layout without its library opens with missing footprints and a reviewer cannot tell whether the design or the archive is broken. Whatever tool you use, the unit to keep is the project folder, not the one file you edited.
Two things belong with every version: a short note saying what changed and why, and a way to get back exactly that state later. A folder name carries neither.
Source history and design review solve different jobs
Git gives you both of those things for free, and if your team already uses it for firmware there is no reason to keep the board out of the repo. The KiCad version-control guide covers what to commit and what to ignore. A text diff helps trace source edits, but coordinates and identifiers do not by themselves show a circuit or its physical layout. Binary designs need another comparison method. Teams can generate previews in CI or use a hardware review service alongside Git; inspect the design as well as its history.
The other limit is the audience. A repository is a fine archive for the people who commit to it. A client, a contract manufacturer, or a colleague in another department needs to see the board, not clone it.
Numbered versions on BoardRepo
Successfully publishing a project or changed files creates a saved version. Upload a project zip, Push from KiCad or track a GitHub repository's default branch through the App. Each published version keeps its retained source files and change note. Processing produces previews for supported designs; saving source and completing those previews are separate results. An unchanged Sync Push does not create a new version. The board link opens the latest published version, and history lets you open or download an older one. Record the version number when sending files to a manufacturer.
Supported published version pairs can be compared visually: the changed components, routing and outline are highlighted on the board and schematic and listed by name, which is the review that a text diff cannot give you. If a revision turns out to be wrong, restore the previous version as the latest with one action; the restore is itself a new version, so nothing is rewritten. Visual comparison needs sign-in, compatible source formats and ready renders; storing a format does not guarantee that BoardRepo can draw or compare it. Restoring online does not replace local KiCad files.
Versioning for a team
When more than one person publishes, the question becomes who is allowed to. An organization owns its boards: admins decide which members can reach each board and who can publish a version, and the history stays with the organization when someone leaves. Organizations are part of the Team plan with setup through contact. That replaces the shared drive and the emailed zip with one address that is always the current board.
Keep versions saved by your assistant
A connected assistant with explicit personal save permission can add a version to a board you own. That keeps its project files outside the conversation. Inspect the saved board and compare revisions before continuing in KiCad, using a source download or the KiCad plugin. The assistant cannot use personal save permission for an organization board. For shared work, save through the web workspace or KiCad plugin with publishing access. Organization saving through MCP is planned, with separate consent and the same board permission checks.
A practical routine
Version at the moments that matter: before you send anything to a fab, after a review round, and whenever you would otherwise rename the folder. Write the note as the message to your future self who is holding an assembled board and wondering what this revision changed. Keep the outputs you ordered from inside the version, not in a separate folder, so the Gerbers and the design that produced them can never drift apart. Then send the link, not the zip.
Upload a board to start a history, or read BoardRepo vs GitHub if your board is already in a repo.
More in the guides.
Continue your work
Connect your AI to inspect board context and use separately approved personal saving where available. Use BoardRepo for KiCad to Push and Pull versions from the editor. For a shared organization workspace, contact us about Team.