pull request
/ˈpʊl rɪˌkwest/noun
A pull request proposes that changes from one branch be reviewed and merged into another. Team members can discuss and check the code before it is incorporated.
The developer opened a pull request and asked two colleagues to review the change.
A pull request groups changes from a Glossary · In briefbranchA branch is a separate line of development in version control. Developers can make and test changes on it without immediately changing the main version of the code.Read more and submits them for review. The author describes what changed and why. Reviewers can examine the differences, leave comments and request adjustments. The author is asking for those changes to be brought into another branch.
From proposal to merge
A developer usually creates a separate branch and records work in one or more Glossary · In briefcommitA commit is a recorded version of files in a version control system. Each commit marks a point in a project's development history.Read more. They then open a pull request targeting the desired branch, often the main branch. The development platform shows which files and lines changed. Automated tests and other checks can run directly against the proposal.
The author can add commits in response to feedback, and these appear in the same pull request. Once checks pass and required approvals are given, the branch can be merged. The pull request is the proposal and discussion around a change; the merge actually puts the code into the target branch.
Pull request and merge request
Pull request and merge request are two names for essentially the same practice. GitHub and Bitbucket generally use pull request, while GitLab uses merge request. Both describe a focused code change that team members can discuss, check and approve.
A pull request does not have to end in a merge. The author can close it if the approach is abandoned or replaced. The discussion and earlier versions usually remain available on the development platform.