Skip to content

Branches

Overview

A branch in the Version Control System represents an independent version of the project's entire file system. Each branch maintains its own complete hierarchy of files and folders, its own history of transactions, and its own current snapshot. Changes made within one branch - such as adding, modifying, or deleting files - do not affect any other branch. This isolation enables multiple parallel workstreams within the same project, such as developing a new feature on one branch while maintaining a stable production version on another.

Every project has at least one branch. When a branch is selected in the file explorer, the tree view displays the file system state of that branch, and all file operations (uploads, renames, moves, deletions) are applied to that branch only.

Branch Metadata

Each branch carries metadata that provides context about its current state and recent activity. This metadata is visible in the branch selection dropdown and includes:

  • Branch name - The human-readable identifier for the branch.
  • Latest task - The name and description of the most recent task associated with the branch.
  • Change summary - A count of additions and removals (displayed as +/- indicators) reflecting the volume of changes in the branch's recent history.
  • Latest transaction description - A summary of the most recent file operation performed on the branch.

This metadata enables quick assessment of branch activity without needing to open the full transaction history.

Switching Branches

The branch selector dropdown is located at the top of the file explorer interface. It lists all available branches in the project along with their metadata. Selecting a different branch from the dropdown reloads the file tree to reflect the selected branch's current file system state. The branch switch is immediate - the tree view, footer snapshot hash, and all subsequent file operations apply to the newly selected branch.

The currently active branch is displayed in the dropdown header. When switching branches, any expanded/collapsed folder states from the previous branch are not carried over; the tree loads with the default collapsed state for the new branch.

INFO

Switching branches does not affect running programs or active deployments. A branch switch only changes which version of the file system is displayed and edited in the file explorer.

Archiving a Branch

Branches that are no longer actively developed can be archived. Archiving preserves the branch and its full history of snapshots and transactions but removes it from the active branch list in the dropdown selector. This keeps the branch selector uncluttered while retaining the ability to reference or restore archived branches in the future.

WARNING

Archiving a branch does not delete it or its history. However, archived branches are no longer visible in the branch selector and cannot receive new file operations until they are restored from the archive.