debian-mirror-gitlab/doc/user/project/merge_requests/index.md

60 lines
2.9 KiB
Markdown
Raw Normal View History

2019-09-04 21:01:54 +05:30
---
2020-10-24 23:57:45 +05:30
stage: Create
2021-04-17 20:07:23 +05:30
group: Code Review
2021-02-22 17:27:13 +05:30
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
2019-12-26 22:10:19 +05:30
type: index, reference
2019-09-04 21:01:54 +05:30
---
2021-03-11 19:13:27 +05:30
# Merge requests **(FREE)**
2017-08-17 22:00:37 +05:30
2021-04-29 21:17:54 +05:30
Merge requests (MRs) are the way you check source code changes into a branch.
When you open a merge request, you can visualize and collaborate on the code changes before merge.
Merge requests include:
2021-04-17 20:07:23 +05:30
- A description of the request.
- Code changes and inline code reviews.
- Information about CI/CD pipelines.
- A comment section for discussion threads.
- The list of commits.
2021-06-08 01:23:25 +05:30
Merge requests contain tabs at the top of the page to help you navigate to
important parts of the merge request: **Overview**, **Commits**, **Pipelines**, and **Changes**.
![Merge request tab positions](img/merge_request_tab_position_v13_11.png)
2021-04-17 20:07:23 +05:30
To get started, read the [introduction to merge requests](getting_started.md).
2017-09-10 17:25:29 +05:30
2021-04-29 21:17:54 +05:30
## Merge request workflows
2017-09-10 17:25:29 +05:30
2021-04-29 21:17:54 +05:30
For a software developer working in a team:
2017-09-10 17:25:29 +05:30
2021-04-29 21:17:54 +05:30
1. You checkout a new branch, and submit your changes through a merge request.
1. You gather feedback from your team.
1. You work on the implementation optimizing code with [Code Quality reports](code_quality.md).
1. You verify your changes with [Unit test reports](../../../ci/unit_test_reports.md) in GitLab CI/CD.
1. You avoid using dependencies whose license is not compatible with your project with [License Compliance reports](../../compliance/license_compliance/index.md).
2021-06-08 01:23:25 +05:30
1. You request the [approval](approvals/index.md) from your manager.
2019-12-26 22:10:19 +05:30
1. Your manager:
2021-04-29 21:17:54 +05:30
1. Pushes a commit with their final review.
2021-06-08 01:23:25 +05:30
1. [Approves the merge request](approvals/index.md).
2021-04-29 21:17:54 +05:30
1. Sets it to [merge when pipeline succeeds](merge_when_pipeline_succeeds.md).
1. Your changes get deployed to production with [manual actions](../../../ci/yaml/README.md#whenmanual) for GitLab CI/CD.
1. Your implementations were successfully shipped to your customer.
For a web developer writing a webpage for your company's website:
1. You checkout a new branch and submit a new page through a merge request.
1. You gather feedback from your reviewers.
1. You preview your changes with [Review Apps](../../../ci/review_apps/index.md).
1. You request your web designers for their implementation.
2021-06-08 01:23:25 +05:30
1. You request the [approval](approvals/index.md) from your manager.
2021-04-29 21:17:54 +05:30
1. Once approved, your merge request is [squashed and merged](squash_and_merge.md), and [deployed to staging with GitLab Pages](https://about.gitlab.com/blog/2021/02/05/ci-deployment-and-environments/).
1. Your production team [cherry picks](cherry_pick_changes.md) the merge commit into production.
2019-12-26 22:10:19 +05:30
2021-04-29 21:17:54 +05:30
## Related topics
2017-08-17 22:00:37 +05:30
2021-04-29 21:17:54 +05:30
- [Create a merge request](creating_merge_requests.md)
2021-06-08 01:23:25 +05:30
- [Review and manage merge requests](reviews/index.md)
2021-04-29 21:17:54 +05:30
- [Authorization for merge requests](authorization_for_merge_requests.md)
- [Testing and reports](testing_and_reports_in_merge_requests.md)