Push content to target branches

You can push any type of object to other target branches, such as a bulk push of all eligible children of a map or a push of a single topic and its content, images, or ditavals.

About this task

Note: You can push content to Delivery branches only if the objects that you want to push have a minimum status that matches the Delivery branch. In the default configuration, the minimum status is Authoring:done. However, your configuration might be different.

Before you push topics, such as the children of a map, consider the implications of having a new instance of that content and your future usage of that content. You should know whether or not you want to create a division between former content and your planned new content or if you want updates to flow to all versions of the object.

If you choose to edit a map child object in only some branches, then that object is forked. With the forked object, you create a new instance of the object in the branches that you selected, and all your changes apply to this new instance. However, the object remains unchanged in the original object for the branches that you did not select. Two instances of the object now exist, and you can choose to either manually update them independently to push updates to all branches or you can auto-update them, which keeps any existing objects at their original state and only updates the new forked object.

Note: Once you push the topic children of a map to another branch or fork, you cannot see the change if you are in that branch. To view the change, search for the source map and then click to see the new branch details, then close the information window.

When you push an object, one of the following happens:

  • If target branches do not already have an instance of the object, they will share the object that you push.
  • If target branches have a different instance of the object, that instance will update with the content from the object that you push.

To push content to target branches:

Procedure

  1. For the source object you want to push, click More Options icon to access the More Options menu.
  2. If you want to create a new instance, take the following actions:
    1. Click New Instance to create a new instance of a map.
    2. In the New Instance dialog, select the branch where you want to create the new instance or create a new branch.
    3. Click Create.
    4. In the New Instance information dialog, view the Action Performed column.
    5. If everything is as you expect, click Continue, but if not, click Cancel.
  3. If you want to manage an instance and select an existing branch as the target for your push, take the following actions:
    1. Click Manage Instance to manage an existing instance of a map.
    2. If you are pushing a map, do one of the following:
      • Move the Push Dependencies slider to On if you want to push the map and its eligible dependencies to the target branch. This includes topics, images, and associated Build Manifests.
      • Move the Push Dependencies slider to Off if you want to push only the map and not its eligible dependencies to the target branch.

      Regardless of the setting of the slider, any new topics included in the map since the last push are always pushed. CCMS Web cannot push a map with missing references to the target branch.

      The default setting of this slider is determined by the system configuration. If you want a different default, contact your System Administrator.

      CAUTION: When dependencies are not pushed along with the map, there is a great possibility for branches to get out of sync. CCMS Web does not currently have a good way to track this. If you opt not to push children, be prepared to develop and use your own tracking processes outside CCMS Web to ensure you are keeping track of what has and has not been pushed.
    3. In the Manage Instance dialog, select the target branch for the push.
      The Push To dialog appears and lists all the branches in the Product or Library that do not have the source instance of the object:
      • Branches with a Topic icon (Topic) and creation date have a different instance of the object that you want to push.
      • Branches without the icon and date do not have any instance of the object.

      The branches are organized by branch type.

      Note: If a branch is dimmed, you cannot currently push the source object to it. The reason a branch is unavailable is explained in the Push To dialog.

      You can push updates to another instance only if the source instance is at the same status as the target instance or the source instance is further along in its workflow. This prevents incomplete content from being pushed into completed objects.

    4. In the dropdown menu below the pane, select one of the update options:
      • Select Automatic Update if you want to overwrite the content in all branches with the pushed source content.

      • Select Manual Update to fork the pushed source content and retain all prior branches with existing content until you manually push it.
        Important: If you perform a manual update, all future updates must be manual as well. If you update the forked object, you can only perform a manual update to it afterward.
    5. Select the branches that you want to update.
      As you select branches, the bottom of the Push To dialog updates to summarize the actions that CCMS Web will take.

      You can only update one instance in target branches or share the source instance with other branches.

      If you pick a branch that already has an instance, you can then select only other branches that share the same instance.

    6. Where updates are required, select Automatic Update or Manual Update at the bottom.
      You can update the instance automatically only if there are no potential conflicts.
  4. Click Push.
    One of the following occurs:
    • If an instance of the object already exists in the target branch, the instance is updated automatically unless a manual update is required or you chose it.

      If this instance is shared with other branches that you did not select, the instance forks in the target branches.

      Note: Follow the steps below only if you must manually update objects or there are dependencies.
    • If an instance of the object did not exist in the Branch, the source instance is now shared with the selected Branches.
      Note: For maps, a new instance of the map is created because maps are never shared between Branches. Follow the steps below only if there are dependencies.
  5. If the object has dependencies, choose one of the following actions:
    Scenario Description Steps
    Push Dependencies dialog appears The Push Dependencies dialog explains if dependencies must be shared with the target Branches.

    Any target Branches that do not have a dependency must share the dependency with the source Branch.

    Note: Any dependencies that already exist in the other Branches are not updated during a push. You might want to push these dependencies later.
    1. Click Continue.
    2. If you have any dependencies checked out, enter a comment and click Check in.
    Dependencies Preventing the Push dialog appears There are dependencies, but some are checked out by other users. They cannot be checked in and shared, so the object cannot be pushed.
    1. Click Back.
  6. If you must manually update an instance, do the following in the Manual Update window:
    Important: If you cancel now, you cannot undo any forking actions performed earlier.
    1. To accept or reject a change, click one of the following.
      • Accept: Accept
      • Accept All: Accept All
      • Reject: Reject
      • Reject All: Reject All
    2. To manually make a change, edit the object in the Main Editing area.
      Note: You can access all the usual functionality in the editor for the object type, but you cannot manually change images.
    3. Repeat the steps as required to accept or reject all changes.
  7. Add a comment for the instances that you manually updated.
  8. Click Check in.
    The object is checked in, and the comment appears in its revision history.