Table of Contents
User Guide
Branching
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.
Creating a Branch
Use the Branching Tab in the Resource Viewer to create a parallel set of content in a new branch.
Overwriting a Branch
Use the Branching Tab in the Resource Viewer to replace all content in a branch with newer content from another branch.
Merging Some Changes Between Map Branches
Use the Branching Tab in the Resource Viewer to only merge selected changes between map branches.
Merging All Changes Between Map Branches
Use the Branching Tab in the Resource Viewer to merge all changes from one branch into another.
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
Creating a Branch

Use the Branching Tab in the Resource Viewer to create a parallel set of content in a new branch.
You’re in the Content Manager and want to branch a map.
  1. Right-click a map and select Branching.Branching Tab
  2. Click New Branch.

    Expected Result
    The Create New Branch window displays.
  3. Enter a name for the new branch.
  4. Click Save.

    Expected Result
    The Branch created dialog displays.
  5. Do one of the following:

    1. To switch to the new branch, click OK.

      Expected Result
      You are switched to the new branch. The new branch is selected in the Branch drop-down menu.
    2. To stay in the current branch, click Cancel.

      Expected Result
      You remain in the current branch. The current branch displays in the Branch drop-down menu.
A new branch is created.
Overwriting a Branch

Use the Branching Tab in the Resource Viewer to replace all content in a branch with newer content from another branch.
You’re in the Content Manager and want to replace the content of one branch with the content from another branch.
  1. Right-click a map and select Branching.Branching Tab
  2. In the Source Branch drop-down menu, select the branch that will be used to update the target branch.

    Step Information
  3. In the Target Branch drop-down menu, select the branch that will be updated to match the source branch.

    Step Information
  4. Do one of the following:

    1. To replace all modified files, click Replace -> Replace All.

      Expected Result
      The Resources Affected By Replace Operation window displays.
    2. To only replace files that have been approved, click Replace -> Replace Approved.

      Expected Result
      The Resources Affected By Replace Operation window displays.
  5. Click Submit.
The target branch is updated with content in the source branch.
Merging Some Changes Between Map Branches

Use the Branching Tab in the Resource Viewer to only merge selected changes between map branches.
You’re in the Content Manager and want to merge map branches and select which changes are pushed from the source branch into the target branch.
  1. Right-click a map and select Branching.Branching Tab
  2. In the Source Branch drop-down menu, select the branch that will be used to update the target branch.

    Step Information
  3. In the Target Branch drop-down menu, select the branch that will be updated to match the source branch.

    Step Information
  4. Click Merge.

    Expected Result
    The Merge Branches window displays.
  5. To merge changes from a branch, click Merge.

    Step Information
    The Merge File window displays.
    1. To accept the highlighted change, click Accept.
    2. To reject the highlighted change, click Reject.
    3. Click Save.
  6. To ignore changes that should not be applied to the target branch, click Ignore.
The changes in the source branch are pushed into the target branch.
Merging All Changes Between Map Branches

Use the Branching Tab in the Resource Viewer to merge all changes from one branch into another.
You’re in the Content Manager and want to push all changes between map branches.
  1. Right-click a map and select Branching.Branching Tab
  2. In the Source Branch drop-down menu, select the branch that will be used to update the target branch.

    Step Information
  3. In the Target Branch drop-down menu, select the branch that will be updated to match the source branch.

    Step Information
  4. Click Merge.

    Expected Result
    The Merge Branches window displays.
  5. Click Add all to target branch.
You pushed all the changes from the source branch to the target branch.