Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-10-20 11:43:02 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-10-20 11:43:02 +0300
commitd9ab72d6080f594d0b3cae15f14b3ef2c6c638cb (patch)
tree2341ef426af70ad1e289c38036737e04b0aa5007 /doc/user/project/merge_requests
parentd6e514dd13db8947884cd58fe2a9c2a063400a9b (diff)
Add latest changes from gitlab-org/gitlab@14-4-stable-eev14.4.0-rc42
Diffstat (limited to 'doc/user/project/merge_requests')
-rw-r--r--doc/user/project/merge_requests/approvals/rules.md4
-rw-r--r--doc/user/project/merge_requests/approvals/settings.md24
-rw-r--r--doc/user/project/merge_requests/confidential.md37
-rw-r--r--doc/user/project/merge_requests/getting_started.md11
-rw-r--r--doc/user/project/merge_requests/index.md9
-rw-r--r--doc/user/project/merge_requests/reviews/index.md4
-rw-r--r--doc/user/project/merge_requests/reviews/suggestions.md11
-rw-r--r--doc/user/project/merge_requests/status_checks.md2
-rw-r--r--doc/user/project/merge_requests/test_coverage_visualization.md7
9 files changed, 69 insertions, 40 deletions
diff --git a/doc/user/project/merge_requests/approvals/rules.md b/doc/user/project/merge_requests/approvals/rules.md
index 7e168fb239a..b422982c0e7 100644
--- a/doc/user/project/merge_requests/approvals/rules.md
+++ b/doc/user/project/merge_requests/approvals/rules.md
@@ -154,7 +154,7 @@ become eligible approvers in the project. To enable this merge request approval
1. Go to your project and select **Settings > General**.
1. Expand **Merge request (MR) approvals**.
-1. Locate **Any eligible user** and select the number of approvals required:
+1. Locate **Eligible users** and select the number of approvals required:
![MR approvals by Code Owners](img/mr_approvals_by_code_owners_v12_7.png)
@@ -225,7 +225,7 @@ approval rule for certain branches:
1. Go to your project and select **Settings**.
1. Expand **Merge request (MR) approvals**.
1. Select a **Target branch**:
- - To protect all branches, select **Any branch**.
+ - To protect all branches, select **All branches**.
- To select a specific branch, select it from the list:
![Scoped to protected branch](img/scoped_to_protected_branch_v13_10.png)
diff --git a/doc/user/project/merge_requests/approvals/settings.md b/doc/user/project/merge_requests/approvals/settings.md
index ebd07f30f52..1c56e91ed6b 100644
--- a/doc/user/project/merge_requests/approvals/settings.md
+++ b/doc/user/project/merge_requests/approvals/settings.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference, concepts
---
-# Merge request approval settings **(FREE)**
+# Merge request approval settings **(PREMIUM)**
You can configure the settings for [merge request approvals](index.md) to
ensure the approval rules meet your use case. You can also configure
@@ -30,7 +30,7 @@ In this section of general settings, you can configure the following settings:
| [Require user password to approve](#require-user-password-to-approve) | Force potential approvers to first authenticate with a password. |
| [Remove all approvals when commits are added to the source branch](#remove-all-approvals-when-commits-are-added-to-the-source-branch) | When enabled, remove all existing approvals on a merge request when more changes are added to it. |
-## Prevent approval by author **(PREMIUM)**
+## Prevent approval by author
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/3349) in GitLab 11.3.
> - Moved to GitLab Premium in 13.9.
@@ -52,7 +52,7 @@ this setting, unless you configure one of these options:
at the instance level, you can't edit this setting at the project or individual
merge request levels.
-## Prevent approvals by users who add commits **(PREMIUM)**
+## Prevent approvals by users who add commits
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/10441) in GitLab 11.10.
> - Moved to GitLab Premium in 13.9.
@@ -126,13 +126,29 @@ merge request could introduce a vulnerability.
To learn more, see [Security approvals in merge requests](../../../application_security/index.md#security-approvals-in-merge-requests).
-## Code coverage check approvals **(PREMIUM)**
+## Code coverage check approvals
You can require specific approvals if a merge request would result in a decline in code test
coverage.
To learn more, see [Coverage check approval rule](../../../../ci/pipelines/settings.md#coverage-check-approval-rule).
+## Merge request approval settings cascading
+
+> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/285410) in GitLab 14.4. [Deployed behind the `group_merge_request_approval_settings_feature_flag` flag](../../../../administration/feature_flags.md), disabled by default.
+
+FLAG:
+On self-managed GitLab, by default this feature is not available. To make it available per group, ask an administrator to [enable the `group_merge_request_approval_settings_feature_flag` flag](../../../../administration/feature_flags.md). On GitLab.com, this feature is not available.
+You should not use this feature for production environments
+
+You can also enforce merge request approval settings:
+
+- At the [instance level](../../../admin_area/merge_requests_approvals.md), which apply to all groups on an instance and, therefore, all
+ projects.
+- On a [top-level group](../../../group/index.md#group-approval-rules), which apply to all subgroups and projects.
+
+If the settings are inherited by a group or project, they cannot be overridden by the group or project that inherited them.
+
## Related links
- [Instance-level merge request approval settings](../../../admin_area/merge_requests_approvals.md)
diff --git a/doc/user/project/merge_requests/confidential.md b/doc/user/project/merge_requests/confidential.md
index 6df84dd1dd1..ff2e6acf123 100644
--- a/doc/user/project/merge_requests/confidential.md
+++ b/doc/user/project/merge_requests/confidential.md
@@ -11,11 +11,11 @@ info: To determine the technical writer assigned to the Stage/Group associated w
Merge requests in a public repository are also public, even when the merge
request is created for a [confidential issue](../issues/confidential_issues.md).
To avoid leaking confidential information when working on a confidential issue,
-create your merge request from a private fork.
+create your merge request from a private fork in the same namespace.
Roles are inherited from parent groups. If you create your private fork in the
-same group or subgroup as the original (public) repository, developers receive
-the same permissions in your fork. This inheritance ensures:
+same namespace (same group or subgroup) as the original (public) repository,
+developers receive the same permissions in your fork. This inheritance ensures:
- Developer users have the needed permissions to view confidential issues and resolve them.
- You do not need grant individual users access to your fork.
@@ -24,13 +24,17 @@ The [security practices for confidential merge requests](https://gitlab.com/gitl
## Create a confidential merge request
-WARNING:
-To create a confidential merge request, you must create a private fork. This fork
-may expose confidential information, if you create your fork in another namespace
-that may have other members.
-
Branches are public by default. To protect the confidentiality of your work, you
-must create your changes in a private fork.
+must create your branches and merge requests in the same namespace, but downstream
+in a private fork. If you create your private fork in the same namespace as the
+public repository, your fork inherits the permissions of the upstream public repository.
+Users with the Developer role in the upstream public repository inherit those upstream
+permissions in your downstream private fork without action by you. These users can
+immediately push code to branches in your private fork to help fix the confidential issue.
+
+WARNING:
+Your private fork may expose confidential information, if you create it in a different
+namespace than the upstream repository. The two namespaces may not contain the same users.
Prerequisites:
@@ -56,16 +60,15 @@ To create a confidential merge request:
branches must be available in your selected fork.
1. Select **Create**.
-If you created a branch in your private fork, users with the Developer role in the
-public repository can push code to that branch in your private fork to fix the
-confidential issue.
+This merge request targets your private fork, not the public upstream project.
+Your branch, merge requests, and commits remain in your private fork. This prevents
+prematurely revealing confidential information.
-As your merge request targets your private fork, not the public upstream project,
-your branch, merge request, and commits do not enter the public repository. This
-prevents prematurely revealing confidential information.
+Open a merge request
+[from your fork to the upstream repository](../repository/forking_workflow.md#merging-upstream) when:
-To make a confidential commit public, open a merge request from the private fork
-to the public upstream project.
+- You are satisfied the problem is resolved in your private fork.
+- You are ready to make the confidential commits public.
## Related links
diff --git a/doc/user/project/merge_requests/getting_started.md b/doc/user/project/merge_requests/getting_started.md
index 72fcd7f36b0..cee4df1f61e 100644
--- a/doc/user/project/merge_requests/getting_started.md
+++ b/doc/user/project/merge_requests/getting_started.md
@@ -50,8 +50,9 @@ Learn the various ways to [create a merge request](creating_merge_requests.md).
## What you can do with merge requests
When you start a new merge request, you can immediately include the following
-options, or add them later by clicking the **Edit** button on the merge
-request's page at the top-right side:
+options. You can also add them later by either selecting **Edit** on the merge
+request's page at the top-right side, or by using
+[keyboard shortcuts for merge requests](../../shortcuts.md#issues-and-merge-requests):
- [Assign](#assignee) the merge request to a colleague for review. With [multiple assignees](#multiple-assignees), you can assign it to more than one person at a time.
- Set a [milestone](../milestones/index.md) to track time-sensitive changes.
@@ -74,8 +75,10 @@ After you have created the merge request, you can also:
- Add [code suggestions](reviews/suggestions.md) to change the content of merge requests directly into merge request threads, and easily apply them to the codebase directly from the UI.
- Add a time estimation and the time spent with that merge request with [Time Tracking](../time_tracking.md#time-tracking).
-Many of these can be set when pushing changes from the command line,
-with [Git push options](../push_options.md).
+Many of these options can be set:
+
+- From the merge request page, with [keyboard shortcuts](../../shortcuts.md#issues-and-merge-requests).
+- When pushing changes from the command line, with [Git push options](../push_options.md).
See also other [features associated to merge requests](reviews/index.md#associated-features).
diff --git a/doc/user/project/merge_requests/index.md b/doc/user/project/merge_requests/index.md
index b7e055ca749..2c062c2c592 100644
--- a/doc/user/project/merge_requests/index.md
+++ b/doc/user/project/merge_requests/index.md
@@ -40,14 +40,18 @@ important parts of the merge request:
## View merge requests
-You can view merge requests for a specific project, or for all projects in a group:
+To view a list of merge requests:
-- **Specific project**: Go to your project and select **Merge requests**.
+- **Merge requests for a project**: Go to your project and select **Merge requests**, or use
+ the <kbd>g</kbd> + <kbd>m</kbd> [keyboard shortcut](../../shortcuts.md) from a page in your project.
- **All projects in a group**: Go to your group and select **Merge requests**.
If your group contains subgroups, this view also displays merge requests from the subgroup projects.
GitLab displays a count of open merge requests in the left sidebar, but
[caches the value](reviews/index.md#cached-merge-request-count) for groups with a large number of
open merge requests.
+- **Merge requests assigned to you**: On any GitLab page, select **Merge requests**
+ in the top bar, or use the <kbd>Shift</kbd> + <kbd>m</kbd>
+ [global keyboard shortcut](../../shortcuts.md).
GitLab displays open merge requests, with tabs to filter the list by open and closed status:
@@ -153,3 +157,4 @@ For a web developer writing a webpage for your company's website:
- [Review a merge request](reviews/index.md)
- [Authorization for merge requests](authorization_for_merge_requests.md)
- [Testing and reports](testing_and_reports_in_merge_requests.md)
+- [GitLab keyboard shortcuts](../../shortcuts.md)
diff --git a/doc/user/project/merge_requests/reviews/index.md b/doc/user/project/merge_requests/reviews/index.md
index dbf3b0180e6..e6f84f1c357 100644
--- a/doc/user/project/merge_requests/reviews/index.md
+++ b/doc/user/project/merge_requests/reviews/index.md
@@ -158,7 +158,7 @@ Multiline comments display the comment's line numbers above the body of the comm
Users with permission level of [Developer or higher](../../../permissions.md) can manage merge requests.
-When bulk editing merge requests in a project, you can edit the following attributes:
+When bulk-editing merge requests in a project, you can edit the following attributes:
- Status (open/closed)
- Assignee
@@ -211,6 +211,8 @@ These features are associated with merge requests:
GitLab can provide the option to resolve certain merge request conflicts in the GitLab UI.
- [Revert changes](../revert_changes.md):
Revert changes from any commit from a merge request.
+- [Keyboard shortcuts](../../../shortcuts.md#issues-and-merge-requests):
+ Access and modify specific parts of a merge request with keyboard commands.
## Troubleshooting
diff --git a/doc/user/project/merge_requests/reviews/suggestions.md b/doc/user/project/merge_requests/reviews/suggestions.md
index 4027ec08234..ac1cd57fb99 100644
--- a/doc/user/project/merge_requests/reviews/suggestions.md
+++ b/doc/user/project/merge_requests/reviews/suggestions.md
@@ -33,9 +33,8 @@ which generates a commit in the merge request authored by the user that suggeste
![Apply suggestions](img/apply_suggestion_v13_9.png)
-1. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/25381) in GitLab 13.9,
- you can opt to add a custom commit message to describe your change. If you don't
- specify it, the default commit message is used. It is not supported for [batch suggestions](#batch-suggestions).
+1. Optionally specify a custom commit message for individual suggestions (GitLab 13.9 and later) to
+ describe your change. If you don't specify it, the default commit message is used.
![Custom commit](img/custom_commit_v13_9.png)
@@ -118,6 +117,7 @@ introduced by [#25381](https://gitlab.com/gitlab-org/gitlab/-/issues/25381).
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/25486) in GitLab 13.1 as an [alpha feature](https://about.gitlab.com/handbook/product/gitlab-the-product/#alpha) behind a feature flag, disabled by default.
> - [Enabled by default](https://gitlab.com/gitlab-org/gitlab/-/issues/227799) in GitLab 13.2.
> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/320755) in GitLab 13.11.
+> - Custom commit messages for batch suggestions [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/326168) in GitLab 14.4.
You can apply multiple suggestions at once to reduce the number of commits added
to your branch to address your reviewers' requests.
@@ -134,7 +134,10 @@ to your branch to address your reviewers' requests.
![A code change suggestion displayed, with the button to remove that suggestion from its batch highlighted.](img/remove_suggestion_from_batch_v13_1.jpg "Remove a suggestion from a batch")
-1. Having added all the suggestions to your liking, when ready, select **Apply suggestions**:
+1. Having added all the suggestions to your liking, when ready, select **Apply suggestions**. You
+ can optionally specify a custom commit message for [batch suggestions](#batch-suggestions)
+ (GitLab 14.4 and later) to describe your change. If you don't specify it, the default commit
+ message is used.
![A code change suggestion displayed, with the button to apply the batch of suggestions highlighted.](img/apply_batch_of_suggestions_v13_1.jpg "Apply a batch of suggestions")
diff --git a/doc/user/project/merge_requests/status_checks.md b/doc/user/project/merge_requests/status_checks.md
index 399d7958bbf..08b82462187 100644
--- a/doc/user/project/merge_requests/status_checks.md
+++ b/doc/user/project/merge_requests/status_checks.md
@@ -93,7 +93,7 @@ for doesn't appear immediately. The search box requires
**three** alphanumeric characters to be entered for the search to begin.
If you want the status check to be applied to **all** merge requests,
-you can select the **Any branch** option.
+you can select the **All branches** option.
## Delete a status check
diff --git a/doc/user/project/merge_requests/test_coverage_visualization.md b/doc/user/project/merge_requests/test_coverage_visualization.md
index 813e3c1c9ce..b36510c2df8 100644
--- a/doc/user/project/merge_requests/test_coverage_visualization.md
+++ b/doc/user/project/merge_requests/test_coverage_visualization.md
@@ -177,8 +177,6 @@ coverage-jdk11:
# convert report from jacoco to cobertura, using relative project path
- python /opt/cover2cover.py target/site/jacoco/jacoco.xml $CI_PROJECT_DIR/src/main/java/ > target/site/cobertura.xml
needs: ["test-jdk11"]
- dependencies:
- - test-jdk11
artifacts:
reports:
cobertura: target/site/cobertura.xml
@@ -215,8 +213,6 @@ coverage-jdk11:
# convert report from jacoco to cobertura, using relative project path
- python /opt/cover2cover.py build/jacoco/jacoco.xml $CI_PROJECT_DIR/src/main/java/ > build/cobertura.xml
needs: ["test-jdk11"]
- dependencies:
- - test-jdk11
artifacts:
reports:
cobertura: build/cobertura.xml
@@ -235,7 +231,8 @@ run tests:
image: python:3
script:
- pip install pytest pytest-cov
- - pytest --cov=src/ tests.py
+ - coverage run -m pytest
+ - coverage report
- coverage xml
artifacts:
reports: