Page tree

Content branching in the Terminology Server

The Authoring Platform Terminology Server (Snowstorm) maintains SNOMED CT content in a controlled hierarchical structure of project and task branches originating from the mainline (or simply MAIN) branch.

MAIN carries controlled changes to SNOMED CT content in the current authoring cycle, which is periodically used to generate a new SNOMED CT International Release. It contains a set of project child branches, which can promote content for inclusion in the next SNOMED CT International release.

Each project branch contains any number of task child branches, which can promote content to the project level for sharing and synchronising across the other tasks. Project branches can be synchronised (rebased from MAIN) with content updates from other projects which have promoted their changes to MAIN.

Task branches can be synchronised (rebased from project) with content updates from other tasks which have promoted their changes to the parent project.

Branch states

  • Up-to-date
    Branch is synchronised with parent
  • Forward
    Branch has at least one change whilst its parent branch is unchanged. This is the required state for merging a branch.
  • Behind
    Parent branch has at least one change whilst the branch is unchanged. Branch can be safely rebased in this state, to bring in the parent changes.
  • Diverged
    Both branch and its parent have at least one change since branch creation. Branch must be rebased before it can be safely promoted, to bring in the parent changes before promoting the branch.
  • Stale
    Branch is no longer associated with its original parent (and should be deleted).


  • No labels