Topic streams and pull requests

Use topic streams to manage a set of defined changes, for example, to fix a defect or develop a small feature. Use pull requests to evaluate and merge a set of defined changes, typically in a topic stream.

Topic streams overview

Topic streams are temporary streams that enable you to isolate your changes from a mainline.

Guidelines and behaviors:

  • By default, any user can create a topic stream.

  • Similar to regular streams, topic streams are versioned.

  • Usually topic streams are visible only to the user who created them, but other team members can be given access by delegating the topic stream or changing its ownership.

  • After you delegate a stream that you created, you can continue contributing to it. Access is controlled by the Manage Topic Streams privilege. All users in the ADMIN group have this privilege by default.

  • CM rules are disabled by default, so you don't have to specify requests when delivering changes.

  • Topic streams have their own icon to differentiate them from regular streams personal-stream.png.

Differences between topic and regular streams:

  • Topic streams have less features and are typically used for short-term work.

  • You cannot create a topic stream from another topic stream.

  • A topic stream and its parent stream must belong to the same Dimensions CM product.

  • A topic stream cannot be deployed, baselined, or added to a Dimensions CM release.

  • A topic stream can only be related to a single, active pull request. After the related pull request has moved to its final state, or been abandoned, you can relate another pull request.

Back to top

Pull requests overview

A pull request is a special type of review that enables teams to collaborate on code changes:

  • Review the proposed code changes.

  • Add review comments and contribute to a discussion.

  • Catch problems early before they become costly to fix.

  • Protect your mainline stream from unwanted changes, bad merges, and broken builds.

  • Approve changes and merge them into a mainline.

Guidelines and behaviors:

  • Pull requests are related to two streams:

    The source stream Where the pull request changes are made and reviewed, typically a topic stream.
    The target stream Where the pull request changes will be merged to, typically a mainline.
  • Pull requests can be related to a request, which is used to merge the pull request changes. If the target stream has CM rules enabled, a request is required for the merge to succeed.

  • Pull requests have a single author and can be assigned to multiple lead and optional reviewers. When you publish a pull request, the reviewers are notified.

  • The related topic stream should preferably contain a small number of changesets. If there are too many changes, the pull request becomes too large to review effectively.

  • Pull requests enable you to merge changes automatically into a parent stream without involving a work area.

  • Pull requests can run PulseUno chains. Chains help you to decide if the changes in a stream are healthy.

    A PulseUno administrator can configure PulseUno to create a pull request automatically when a topic stream is created. The new pull request is automatically linked to the topic stream.

    For details about using PulseUno, see the PulseUno online help.

Back to top

How topic streams and pull requests work together

A topic stream and its related pull request work together to help you manage and merge changes:

  • A topic stream is created from a parent stream, which creates a pull request.

  • Changes are delivered to the topic stream and related to the pull request.

  • The pull request is reviewed, approved, and merged into the topic stream’s parent.

Guidelines and behaviors:

  • Reviewers use pull requests to review changes in a topic stream.

  • An active pull request contains the changes in the related topic stream (but not the changes in closed pull requests).

  • The request related to the pull request is used to merge the changes in the topic stream into its parent stream.

  • In some cases you may have multiple pull requests for a topic stream, but only one can be active and in progress. For example, a topic stream may have previous, closed pull requests, each covering a range of changesets.

You can view all your pull requests in the desktop client or Micro Focus PulseUno. For details about using PulseUno, see the PulseUno online help.

Back to top

See also: