After Contributors make changes in a branch, they submit a Pull Request for review by the Approver. The Approver (or Owner) reviews each change and either approves or rejects them. To manage this process, Approvers use the Branch Details' Pull Request page. The Pull Request page provides information on the Pull Request submission, a list of modules submitted in the Pull Request, and the Pull Request's activity history.
Accessing the Branch Details' Pull Request Page
Approvers use the Branch Details page to review, approve, or reject changes submitted in a Pull Request. From this page, Approvers can also access the View Diffs tool for modules branched from the main module.
To access the Pull Request page on the Workspaces page:
1.
From the Workspaces view, select a workspace tile.
2.
Locate a VCS-enabled application. The VCS icon displays in the tile's header.
3.
Click the application tile's name, or click View App in VCS.
(click image to enlarge)
4.
If required, enter your UDLC credentials to log into the VCS tool. The App Details' Branches page displays.
5.
From the Branches I Created drop-down, select My 'Approver' Branches.
Creators must be assigned a role in a branch to see it in the Branches list. The branch Owner can add Creators to roles in a branch by editing the branch settings.
6.
Click Search. The Branches list displays branches to which you have Approver access.
7.
Select the name of a branch that is Pending Review. The Branch Details' Modules page displays.
8.
Click Pull Request.
The Pull Request page is not accessible if the branch doesn't have a previous or current Pull Request.
Approving or Rejecting Changes
Modules created or marked for deletion in a branch do not require the Approver to compare differences like a branched module. To review new modules or modules marked for deletion, use the Branch Details Modules page.
1.
To approve or reject changes from the Pull Request page:
2.
From the Modules to Review list, find a module that offers the Approve | Reject buttons.
The Approve and Reject buttons do not display for modules experiencing conflicts, or if they have changes that must first be reviewed.
3.
Click Approve or Reject. The decision displays in the Approver Decision column.
Reviewing Branched Main Module Changes
If the Pull Request contains modules that are branched from the main Module, the Approver uses the View Diff tool to review the changes. The View Diff tool displays a list of changes made to a module and visually compares those changes in a side-by-side display.
To review a branched main module from the Pull Request page:
1.
Under Modules to Review, navigate to a branch module with the View Diffs button in the Actions column.
2.
Click View Diffs. The View Diffs page displays the branch module.
Component changes in a module display under the Components (x) tab. From this tab, review the changes in each component using the Main Module and Branch Module comparison windows.
The x in Components (x) represents the total value of component changes in the module. This value matches the amount of rows in the Changes in Branch Module list.
1.
Under the Changes in the Branch Module list, next to a component requiring review, click Find. The Main Module and Branch Module comparison windows refresh, outlining the component changes.
2.
In the comparison view, review changes to the component and open its configuration settings. The Main Module window displays the current state of the Main Branch.and The Branch Module window displays the changes created in the branch.
3.
Repeat this process until all changes are reviewed.
4.
If no issues are found, click ✓ Approve to mark the branch module as ready to merge.
5.
(Optional) If an issue is found during the review, click the X Reject button.
Approving or Rejecting a Pull Request
Once an Approver reviews all changes submitted in a Pull Request, they can approve or reject it. Approving a Pull Request indicates it is ready for merge by the Owner. Rejecting a Pull Request indicates the branch needs further changes before it is submitted using another Pull Request
Approving a Pull Request
If all changes in a Pull Request are approved, the Approve Pull Request button becomes available to use. Approving a Pull Request notifies participants (with notifications enabled) that the branch is approved and ready to be merged by the Owner.
After all changes are approved in the Pull Request:
(Optional) In the comment field, enter a reason for approving the Pull Request.
3.
Click Submit. A confirmation modal displays.
4.
Click OK. The Branch Details header status changes to APPROVED, and the Approve Pull Request... button changes to Go to Pull Request Dashboard.
Rejecting a Pull Request
If the Approver rejects a change in the Pull Request, the Reject Pull Request button displays. Rejecting a Pull Request notifies participants (with notifications enabled) of the status change.
To reject a Pull Request for the branch:
1.
From the Branch Details header, click Reject Pull Request.... The Leave Comment modal displays.
2.
In the comment field, enter a reason for why the Pull Request has been rejected.
3.
Click Submit. A confirmation modal displays.
4.
Click OK. The Branch Details header status changes to REJECTED, and the Reject Pull Request... button changes to Go to Pull Request Dashboard.
Best Practices
Use a Creator in the Approver role for reviewing Pull Requests. Owners shouldn't review Pull Requests unless specified by your organization.
Comment early and comment often while using the Unqork VCS tool. The Comments tool is ideal for Contributors and Owners to communicate with Reviewers and Approvers.