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.
- 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
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
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.