Branch status and branch type

A branch has a given status, depending on its place in the product development cycle. The status of a branch determines what type of branch it is.

  • Development status is for a product in active product development
  • Maintenance status is for a released product that is in a maintenance phase
  • Delivery status is for a product released out to a client
  • Closed status is for a product that is no longer on offer to its identified audience

Available actions based on branch status

Branch types have different requirements and behaviors, based on the branch status.

Behavior Development or Maintenance Delivery Closed
Allows Editing Editable Read-only
Minimum Status for Objects Objects can be at any status Objects must be in a final status, such as Done
Note: Cannot move objects to an earlier status, such as Work
New Objects Addition of new objects allowed in branch No addition of new objects allowed in branch
Deleting Branches Deletion of a Development branch allowed No deletion of a Delivery branch allowed No deletion of a Closed branch allowed
Content Pushed from Other Branches New content allowed for push to branch New content allowed for push to branch.
Note: Content in the source branch must have at minimum a status of Delivery before you can push new content. When you push new content, it creates a new revision for the instance of the object in the Delivery branch, despite its status.
No new content allowed for push to branch

Automatic object forks

When an object is shared between different branches, it might automatically fork depending on the combination of branch types and whether there is a clear context for your edits. It can automatically fork when you edit the object or when you change its status from Done back to Work.

The following assumptions assist in determining the context of your edit:
  • If you edit an object while in Map Editor, the map open in Map Editor is the context
  • If you edit an object that is assigned to you, any context map for the assignment is the context
Note: The map that you edit an object within overrides the context of any assignment.

An object automatically forks only when:

  • You edit the object in only one of the branches in which it is located
  • You edit the object within the context of a Maintenance branch
  • You edit the object within the context of a Development branch and it is not shared with any other Development branches
Note: Instances in Delivery and Closed branches never automatically fork, since they are in a final status and cannot be checked out.

For example, you are in Map Editor and want to edit a topic. The system assumes you want to edit the topic within the context of the map. If this map is in a Maintenance branch, the topic will automatically fork. When you click Edit, the system notifies you before the topic forks.