Table of Contents
User Guide
Branching Overview

The Branching feature enables you to create a parallel set of content so you can edit the branched content without affecting the original content, and merge or replace changes from one branch to another.
The Branching feature is another method of versioning. When a map is branched, full copies of each component are created in the new branch along with its link dependencies. So, you can edit the branched map without affecting the original map. Then when you’re ready, you can merge or replace changes from one branch into another.
For example, you need to update content for an upcoming software release. However, the current content is still relevant and being used. You can use the branching feature to branch the ‘original’ content, and edit the branched content without affect the ‘original’ content. Then when the new software is released, you can merge the content from new branch to the ‘original’ branch.
You can use the Branching Tab in the Resource Viewer to merge or replace content from one branch to another. Just select a Source Branch to merge or replace content in the Target Branch with.
Branching a map
Branching a map creates a copy of the map and all of its dependencies.
Master Branch Branch A
Global reuse content
Local reuse content
Map A
  • Topic 1
  • Topic 2
Map B
  • Topic 2
  • Topic 3
Global reuse content
Local reuse content
Map A
  • Topic 1
  • Topic 2
In the example above, the master branch contains folders for global and local reuse content. It also contains two maps, Map A and Map B. If you branch Map A, that map and all of its dependencies (topics, images, and reused content) are copied into a new branch named Branch A.
If any of the topics in Map A are linked to topics that aren’t directly referenced in the map, those topics would also be included, even though it is not an direct dependency of the map.
easyDITA’s branching feature uses a selective branching system. So when you branch a branch into a branch, if a component is already present in the target branch, it will not be overwritten. The component will be unchanged and any other component linking to it will be relinked to the pre-existing component.

Branch B Branch A
Global reuse content
Local reuse content
Map B
  • Topic 2
  • Topic 3
Global reuse content
Local reuse content
Map A
  • Topic 1
  • Topic 2
In the example above, when you branch Branch B (Source Branch) into Branch A (Target Branch), the common files shared between the branches will be relinked, but not overwritten to pre-existing content in the target source (Branch A).
Branching into a branch