mirror of
https://github.com/telekom-security/tpotce.git
synced 2025-04-29 19:58:52 +00:00
412 lines
33 KiB
Text
412 lines
33 KiB
Text
<!DOCTYPE html>
|
|
|
|
<html class="" lang="en">
|
|
<head prefix="og: http://ogp.me/ns#">
|
|
<meta charset="utf-8"/>
|
|
<meta content="IE=edge" http-equiv="X-UA-Compatible"/>
|
|
<meta content="object" property="og:type"/>
|
|
<meta content="GitLab" property="og:site_name"/>
|
|
<meta content="Index · Discussions · User · Help" property="og:title"/>
|
|
<meta content="GitLab Community Edition" property="og:description"/>
|
|
<meta content="http://172.20.254.127/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" property="og:image"/>
|
|
<meta content="64" property="og:image:width"/>
|
|
<meta content="64" property="og:image:height"/>
|
|
<meta content="http://172.20.254.127/help/user/discussions/index.md" property="og:url"/>
|
|
<meta content="summary" property="twitter:card"/>
|
|
<meta content="Index · Discussions · User · Help" property="twitter:title"/>
|
|
<meta content="GitLab Community Edition" property="twitter:description"/>
|
|
<meta content="http://172.20.254.127/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png" property="twitter:image"/>
|
|
<title>Index · Discussions · User · Help · GitLab</title>
|
|
<meta content="GitLab Community Edition" name="description"/>
|
|
<link data-original-href="/assets/favicon-7901bd695fb93edb07975966062049829afb56cf11511236e61bcf425070e36e.png" href="/assets/favicon-7901bd695fb93edb07975966062049829afb56cf11511236e61bcf425070e36e.png" id="favicon" rel="shortcut icon" type="image/png"/>
|
|
<link href="/assets/application-266f2bfa52ff531258d13c702895a14fd5994ca591fa2df7338da00ab18c99ac.css" media="all" rel="stylesheet"/>
|
|
<link href="/assets/print-c8ff536271f8974b8a9a5f75c0ca25d2b8c1dceb4cff3c01d1603862a0bdcbfc.css" media="print" rel="stylesheet"/>
|
|
<script>
|
|
//<![CDATA[
|
|
window.gon={};gon.api_version="v4";gon.default_avatar_url="http://172.20.254.127/assets/no_avatar-849f9c04a3a0d0cea2424ae97b27447dc64a7dbfae83c036c45b403392f0e8ba.png";gon.max_file_size=10;gon.asset_host=null;gon.webpack_public_path="/assets/webpack/";gon.relative_url_root="";gon.shortcuts_path="/help/shortcuts";gon.user_color_scheme="white";gon.gitlab_url="http://172.20.254.127";gon.revision="63daf37";gon.gitlab_logo="/assets/gitlab_logo-7ae504fe4f68fdebb3c2034e36621930cd36ea87924c11ff65dbcb8ed50dca58.png";gon.sprite_icons="/assets/icons-07542808fffaf82e9b57b144464ea42620b32f65ce441c01528d23d4b96d5f11.svg";gon.sprite_file_icons="/assets/file_icons-7262fc6897e02f1ceaf8de43dc33afa5e4f9a2067f4f68ef77dcc87946575e9e.svg";gon.emoji_sprites_css_path="/assets/emoji_sprites-289eccffb1183c188b630297431be837765d9ff4aed6130cf738586fb307c170.css";gon.test_env=false;gon.suggested_label_colors=["#0033CC","#428BCA","#44AD8E","#A8D695","#5CB85C","#69D100","#004E00","#34495E","#7F8C8D","#A295D6","#5843AD","#8E44AD","#FFECDB","#AD4363","#D10069","#CC0033","#FF0000","#D9534F","#D1D100","#F0AD4E","#AD8D43"];
|
|
//]]>
|
|
</script>
|
|
<script defer="defer" src="/assets/webpack/runtime.9fcb75d4.bundle.js"></script>
|
|
<script defer="defer" src="/assets/webpack/main.a66b6c66.chunk.js"></script>
|
|
<script defer="defer" src="/assets/webpack/pages.help.show.c42c0700.chunk.js"></script>
|
|
<meta content="authenticity_token" name="csrf-param">
|
|
<meta content="EbKyCV1Rej5nadSnhIp450kjAhjA87C3Sm8tXqS0NlOSxHP9a21j5u+qM6YjJiocR4LnsuXH/C7SS1R50S7elg==" name="csrf-token">
|
|
<meta content="origin-when-cross-origin" name="referrer"/>
|
|
<meta content="width=device-width, initial-scale=1, maximum-scale=1" name="viewport"/>
|
|
<meta content="#474D57" name="theme-color"/>
|
|
<link href="/assets/touch-icon-iphone-5a9cee0e8a51212e70b90c87c12f382c428870c0ff67d1eb034d884b78d2dae7.png" rel="apple-touch-icon" type="image/x-icon"/>
|
|
<link href="/assets/touch-icon-ipad-a6eec6aeb9da138e507593b464fdac213047e49d3093fc30e90d9a995df83ba3.png" rel="apple-touch-icon" sizes="76x76" type="image/x-icon"/>
|
|
<link href="/assets/touch-icon-iphone-retina-72e2aadf86513a56e050e7f0f2355deaa19cc17ed97bbe5147847f2748e5a3e3.png" rel="apple-touch-icon" sizes="120x120" type="image/x-icon"/>
|
|
<link href="/assets/touch-icon-ipad-retina-8ebe416f5313483d9c1bc772b5bbe03ecad52a54eba443e5215a22caed2a16a2.png" rel="apple-touch-icon" sizes="152x152" type="image/x-icon"/>
|
|
<link color="rgb(226, 67, 41)" href="/assets/logo-d36b5212042cebc89b96df4bf6ac24e43db316143e89926c0db839ff694d2de4.svg" rel="mask-icon"/>
|
|
<meta content="/assets/msapplication-tile-1196ec67452f618d39cdd85e2e3a542f76574c071051ae7effbfde01710eb17d.png" name="msapplication-TileImage"/>
|
|
<meta content="#30353E" name="msapplication-TileColor"/>
|
|
</meta></meta></head>
|
|
<body class="ui-indigo " data-group="" data-page="help:show" data-project="">
|
|
<header class="navbar navbar-gitlab qa-navbar navbar-expand-sm">
|
|
<a class="sr-only gl-accessibility" href="#content-body" tabindex="1">Skip to content</a>
|
|
<div class="container-fluid">
|
|
<div class="header-content">
|
|
<div class="title-container">
|
|
<h1 class="title">
|
|
<a href="/" id="logo" title="Dashboard"><svg class="tanuki-logo" height="24" viewbox="0 0 36 36" width="24">
|
|
<path class="tanuki-shape tanuki-left-ear" d="M2 14l9.38 9v-9l-4-12.28c-.205-.632-1.176-.632-1.38 0z" fill="#e24329"></path>
|
|
<path class="tanuki-shape tanuki-right-ear" d="M34 14l-9.38 9v-9l4-12.28c.205-.632 1.176-.632 1.38 0z" fill="#e24329"></path>
|
|
<path class="tanuki-shape tanuki-nose" d="M18,34.38 3,14 33,14 Z" fill="#e24329"></path>
|
|
<path class="tanuki-shape tanuki-left-eye" d="M18,34.38 11.38,14 2,14 6,25Z" fill="#fc6d26"></path>
|
|
<path class="tanuki-shape tanuki-right-eye" d="M18,34.38 24.62,14 34,14 30,25Z" fill="#fc6d26"></path>
|
|
<path class="tanuki-shape tanuki-left-cheek" d="M2 14L.1 20.16c-.18.565 0 1.2.5 1.56l17.42 12.66z" fill="#fca326"></path>
|
|
<path class="tanuki-shape tanuki-right-cheek" d="M34 14l1.9 6.16c.18.565 0 1.2-.5 1.56L18 34.38z" fill="#fca326"></path>
|
|
</svg>
|
|
<span class="logo-text d-none d-sm-block">
|
|
<svg viewbox="0 0 617 169" xmlns="http://www.w3.org/2000/svg"><path d="M315.26 2.97h-21.8l.1 162.5h88.3v-20.1h-66.5l-.1-142.4M465.89 136.95c-5.5 5.7-14.6 11.4-27 11.4-16.6 0-23.3-8.2-23.3-18.9 0-16.1 11.2-23.8 35-23.8 4.5 0 11.7.5 15.4 1.2v30.1h-.1m-22.6-98.5c-17.6 0-33.8 6.2-46.4 16.7l7.7 13.4c8.9-5.2 19.8-10.4 35.5-10.4 17.9 0 25.8 9.2 25.8 24.6v7.9c-3.5-.7-10.7-1.2-15.1-1.2-38.2 0-57.6 13.4-57.6 41.4 0 25.1 15.4 37.7 38.7 37.7 15.7 0 30.8-7.2 36-18.9l4 15.9h15.4v-83.2c-.1-26.3-11.5-43.9-44-43.9M557.63 149.1c-8.2 0-15.4-1-20.8-3.5V70.5c7.4-6.2 16.6-10.7 28.3-10.7 21.1 0 29.2 14.9 29.2 39 0 34.2-13.1 50.3-36.7 50.3m9.2-110.6c-19.5 0-30 13.3-30 13.3v-21l-.1-27.8h-21.3l.1 158.5c10.7 4.5 25.3 6.9 41.2 6.9 40.7 0 60.3-26 60.3-70.9-.1-35.5-18.2-59-50.2-59M77.9 20.6c19.3 0 31.8 6.4 39.9 12.9l9.4-16.3C114.5 6 97.3 0 78.9 0 32.5 0 0 28.3 0 85.4c0 59.8 35.1 83.1 75.2 83.1 20.1 0 37.2-4.7 48.4-9.4l-.5-63.9V75.1H63.6v20.1h38l.5 48.5c-5 2.5-13.6 4.5-25.3 4.5-32.2 0-53.8-20.3-53.8-63-.1-43.5 22.2-64.6 54.9-64.6M231.43 2.95h-21.3l.1 27.3v94.3c0 26.3 11.4 43.9 43.9 43.9 4.5 0 8.9-.4 13.1-1.2v-19.1c-3.1.5-6.4.7-9.9.7-17.9 0-25.8-9.2-25.8-24.6v-65h35.7v-17.8h-35.7l-.1-38.5M155.96 165.47h21.3v-124h-21.3v124M155.96 24.37h21.3V3.07h-21.3v21.3"></path></svg>
|
|
</span>
|
|
</a></h1>
|
|
<ul class="list-unstyled navbar-sub-nav">
|
|
<li class="home"><a class="dashboard-shortcuts-projects" href="/explore" title="Projects">Projects
|
|
</a></li><li class=""><a class="dashboard-shortcuts-groups" href="/explore/groups" title="Groups">Groups
|
|
</a></li><li class=""><a class="dashboard-shortcuts-snippets" href="/explore/snippets" title="Snippets">Snippets
|
|
</a></li><li>
|
|
<a href="/help" title="About GitLab CE">Help</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div class="navbar-collapse collapse">
|
|
<ul class="nav navbar-nav">
|
|
<li class="nav-item d-none d-sm-none d-md-block m-auto">
|
|
<div class="search search-form">
|
|
<form accept-charset="UTF-8" action="/search" class="form-inline" method="get"><input name="utf8" type="hidden" value="✓"/><div class="search-input-container">
|
|
<div class="search-input-wrap">
|
|
<div class="dropdown" data-url="/search/autocomplete">
|
|
<input aria-label="Search" autocomplete="off" class="search-input dropdown-menu-toggle no-outline js-search-dashboard-options" data-issues-path="/dashboard/issues" data-mr-path="/dashboard/merge_requests" id="search" name="search" placeholder="Search" spellcheck="false" tabindex="1" type="search"/>
|
|
<button class="hidden js-dropdown-search-toggle" data-toggle="dropdown" type="button"></button>
|
|
<div class="dropdown-menu dropdown-select">
|
|
<div class="dropdown-content"><ul>
|
|
<li class="dropdown-menu-empty-item">
|
|
<a>
|
|
Loading...
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div><div class="dropdown-loading"><i aria-hidden="true" class="fa fa-spinner fa-spin" data-hidden="true"></i></div>
|
|
</div>
|
|
<svg class="s16 search-icon"><use xlink:href="/assets/icons-07542808fffaf82e9b57b144464ea42620b32f65ce441c01528d23d4b96d5f11.svg#search"></use></svg>
|
|
<svg class="s16 clear-icon js-clear-input"><use xlink:href="/assets/icons-07542808fffaf82e9b57b144464ea42620b32f65ce441c01528d23d4b96d5f11.svg#close"></use></svg>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<input class="js-search-group-options" id="group_id" name="group_id" type="hidden"/>
|
|
<input class="js-search-project-options" id="search_project_id" name="project_id" type="hidden" value=""/>
|
|
<input id="repository_ref" name="repository_ref" type="hidden"/>
|
|
<div class="search-autocomplete-opts hide" data-autocomplete-path="/search/autocomplete"></div>
|
|
</form></div>
|
|
</li>
|
|
<li class="nav-item d-inline-block d-sm-none d-md-none">
|
|
<a aria-label="Search" data-container="body" data-placement="bottom" data-toggle="tooltip" href="/search" title="Search"><svg class="s16"><use xlink:href="/assets/icons-07542808fffaf82e9b57b144464ea42620b32f65ce441c01528d23d4b96d5f11.svg#search"></use></svg>
|
|
</a></li>
|
|
<li class="nav-item">
|
|
<div>
|
|
<a class="btn btn-sign-in" href="/users/sign_in?redirect_to_referer=yes">Sign in / Register</a>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<button class="navbar-toggler d-block d-sm-none" type="button">
|
|
<span class="sr-only">Toggle navigation</span>
|
|
<svg class="s12 more-icon js-navbar-toggle-right"><use xlink:href="/assets/icons-07542808fffaf82e9b57b144464ea42620b32f65ce441c01528d23d4b96d5f11.svg#more"></use></svg>
|
|
<svg class="s12 close-icon js-navbar-toggle-left"><use xlink:href="/assets/icons-07542808fffaf82e9b57b144464ea42620b32f65ce441c01528d23d4b96d5f11.svg#close"></use></svg>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
<div class="layout-page">
|
|
<div class="content-wrapper">
|
|
<div class="mobile-overlay"></div>
|
|
<div class="alert-wrapper">
|
|
<nav class="breadcrumbs container-fluid container-limited" role="navigation">
|
|
<div class="breadcrumbs-container">
|
|
<div class="breadcrumbs-links js-title-container">
|
|
<ul class="list-unstyled breadcrumbs-list js-breadcrumbs-list">
|
|
<li><a href="/help">Help</a><svg class="s8 breadcrumbs-list-angle"><use xlink:href="/assets/icons-07542808fffaf82e9b57b144464ea42620b32f65ce441c01528d23d4b96d5f11.svg#angle-right"></use></svg></li>
|
|
<li>
|
|
<h2 class="breadcrumbs-sub-title"><a href="/help/user/discussions/index.md">Help</a></h2>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
<div class="flash-container flash-container-page">
|
|
</div>
|
|
</div>
|
|
<div class="container-fluid container-limited ">
|
|
<div class="content" id="content-body">
|
|
<div class="documentation wiki prepend-top-default">
|
|
<h1 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#discussions" id="user-content-discussions"></a>Discussions</h1>
|
|
<p dir="auto">The ability to contribute conversationally is offered throughout GitLab.</p>
|
|
<p dir="auto">You can leave a comment in the following places:</p>
|
|
<ul dir="auto">
|
|
<li>issues</li>
|
|
<li>merge requests</li>
|
|
<li>snippets</li>
|
|
<li>commits</li>
|
|
<li>commit diffs</li>
|
|
</ul>
|
|
<p dir="auto">The comment area supports <a href="/markdown.md">Markdown</a> and <a href="/project/quick_actions.md">quick actions</a>. One can edit their
|
|
own comment at any time, and anyone with <a href="/permissions.md">Maintainer access level</a> or
|
|
higher can also edit a comment made by someone else.</p>
|
|
<p dir="auto">You could also reply to the notification email in order to reply to a comment,
|
|
provided that <a href="/administration/reply_by_email.md">Reply by email</a> is configured by your GitLab admin. This also
|
|
supports <a href="/markdown.md">Markdown</a> and <a href="/project/quick_actions.md">quick actions</a> as if replied from the web.</p>
|
|
<p dir="auto">Apart from the standard comments, you also have the option to create a comment
|
|
in the form of a resolvable or threaded discussion.</p>
|
|
<h2 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#resolvable-discussions" id="user-content-resolvable-discussions"></a>Resolvable discussions</h2>
|
|
<blockquote dir="auto">
|
|
<p><strong>Notes:</strong></p>
|
|
</blockquote>
|
|
<ul dir="auto">
|
|
<li>The main feature was <a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5022" rel="nofollow noreferrer noopener" target="_blank">introduced</a> in GitLab 8.11.</li>
|
|
<li>Resolvable discussions can be added only to merge request diffs.</li>
|
|
</ul>
|
|
<p dir="auto">Discussion resolution helps keep track of progress during planning or code review.
|
|
Resolving comments prevents you from forgetting to address feedback and lets you
|
|
hide discussions that are no longer relevant.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/discussion_view.png" rel="noopener noreferrer" target="_blank"><img alt='"A discussion between two people on a piece of code"' class="lazy" data-src="img/discussion_view.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">Comments and discussions can be resolved by anyone with at least Developer
|
|
access to the project or the author of the merge request.</p>
|
|
<h3 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#commit-discussions-in-the-context-of-a-merge-request" id="user-content-commit-discussions-in-the-context-of-a-merge-request"></a>Commit discussions in the context of a merge request</h3>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/31847" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 10.3.</p>
|
|
</blockquote>
|
|
<p dir="auto">For reviewers with commit-based workflow, it may be useful to add discussions to
|
|
specific commit diffs in the context of a merge request. These discussions will
|
|
persist through a commit ID change when:</p>
|
|
<ul dir="auto">
|
|
<li>force-pushing after a rebase</li>
|
|
<li>amending a commit</li>
|
|
</ul>
|
|
<p dir="auto">To create a commit diff discussion:</p>
|
|
<ol dir="auto">
|
|
<li>
|
|
<p>Navigate to the merge request <strong>Commits</strong> tab. A list of commits that
|
|
constitute the merge request will be shown.</p>
|
|
<p><a class="no-attachment-icon" href="/img/merge_request_commits_tab.png" rel="noopener noreferrer" target="_blank"><img alt="Merge request commits tab" class="lazy" data-src="img/merge_request_commits_tab.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
</li>
|
|
<li>
|
|
<p>Navigate to a specific commit, click on the <strong>Changes</strong> tab (where you
|
|
will only be presented diffs from the selected commit), and leave a comment.</p>
|
|
<p><a class="no-attachment-icon" href="/img/commit_comment_mr_context.png" rel="noopener noreferrer" target="_blank"><img alt="Commit diff discussion in merge request context" class="lazy" data-src="img/commit_comment_mr_context.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
</li>
|
|
<li>
|
|
<p>Any discussions created this way will be shown in the merge request's
|
|
<strong>Discussions</strong> tab and are resolvable.</p>
|
|
<p><a class="no-attachment-icon" href="/img/commit_comment_mr_discussions_tab.png" rel="noopener noreferrer" target="_blank"><img alt="Merge request Discussions tab" class="lazy" data-src="img/commit_comment_mr_discussions_tab.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
</li>
|
|
</ol>
|
|
<p dir="auto">Discussions created this way will only appear in the original merge request
|
|
and not when navigating to that commit under your project's
|
|
<strong>Repository > Commits</strong> page.</p>
|
|
<p dir="auto">TIP: <strong>Tip:</strong>
|
|
When a link of a commit reference is found in a discussion inside a merge
|
|
request, it will be automatically converted to a link in the context of the
|
|
current merge request.</p>
|
|
<h3 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#jumping-between-unresolved-discussions" id="user-content-jumping-between-unresolved-discussions"></a>Jumping between unresolved discussions</h3>
|
|
<p dir="auto">When a merge request has a large number of comments it can be difficult to track
|
|
what remains unresolved. You can jump between unresolved discussions with the
|
|
Jump button next to the Reply field on a discussion.</p>
|
|
<p dir="auto">You can also jump to the first unresolved discussion from the button next to the
|
|
resolved discussions tracker.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/discussions_resolved.png" rel="noopener noreferrer" target="_blank"><img alt='"3/4 discussions resolved"' class="lazy" data-src="img/discussions_resolved.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<h3 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#marking-a-comment-or-discussion-as-resolved" id="user-content-marking-a-comment-or-discussion-as-resolved"></a>Marking a comment or discussion as resolved</h3>
|
|
<p dir="auto">You can mark a discussion as resolved by clicking the <strong>Resolve discussion</strong>
|
|
button at the bottom of the discussion.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/resolve_discussion_button.png" rel="noopener noreferrer" target="_blank"><img alt='"Resolve discussion" button' class="lazy" data-src="img/resolve_discussion_button.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">Alternatively, you can mark each comment as resolved individually.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/resolve_comment_button.png" rel="noopener noreferrer" target="_blank"><img alt='"Resolve comment" button' class="lazy" data-src="img/resolve_comment_button.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<h3 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#move-all-unresolved-discussions-in-a-merge-request-to-an-issue" id="user-content-move-all-unresolved-discussions-in-a-merge-request-to-an-issue"></a>Move all unresolved discussions in a merge request to an issue</h3>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/8266" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 9.1</p>
|
|
</blockquote>
|
|
<p dir="auto">To continue all open discussions from a merge request in a new issue, click the
|
|
<strong>Resolve all discussions in new issue</strong> button.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/btn_new_issue_for_all_discussions.png" rel="noopener noreferrer" target="_blank"><img alt="Open new issue for all unresolved discussions" class="lazy" data-src="img/btn_new_issue_for_all_discussions.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">Alternatively, when your project only accepts merge requests <a href="#only-allow-merge-requests-to-be-merged-if-all-discussions-are-resolved">when all discussions
|
|
are resolved</a>,
|
|
there will be an <strong>open an issue to resolve them later</strong> link in the merge
|
|
request widget.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/resolve_discussion_open_issue.png" rel="noopener noreferrer" target="_blank"><img alt="Link in merge request widget" class="lazy" data-src="img/resolve_discussion_open_issue.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">This will prepare an issue with its content referring to the merge request and
|
|
the unresolved discussions.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/preview_issue_for_discussions.png" rel="noopener noreferrer" target="_blank"><img alt="Issue mentioning discussions in a merge request" class="lazy" data-src="img/preview_issue_for_discussions.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">Hitting <strong>Submit issue</strong> will cause all discussions to be marked as resolved and
|
|
add a note referring to the newly created issue.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/resolve_discussion_issue_notice.png" rel="noopener noreferrer" target="_blank"><img alt="Mark discussions as resolved notice" class="lazy" data-src="img/resolve_discussion_issue_notice.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">You can now proceed to merge the merge request from the UI.</p>
|
|
<h3 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#moving-a-single-discussion-to-a-new-issue" id="user-content-moving-a-single-discussion-to-a-new-issue"></a>Moving a single discussion to a new issue</h3>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/8266" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 9.1</p>
|
|
</blockquote>
|
|
<p dir="auto">To create a new issue for a single discussion, you can use the <strong>Resolve this
|
|
discussion in a new issue</strong> button.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/new_issue_for_discussion.png" rel="noopener noreferrer" target="_blank"><img alt="Create issue for discussion" class="lazy" data-src="img/new_issue_for_discussion.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">This will direct you to a new issue prefilled with the content of the
|
|
discussion, similar to the issues created for delegating multiple
|
|
discussions at once. Saving the issue will mark the discussion as resolved and
|
|
add a note to the merge request discussion referencing the new issue.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/preview_issue_for_discussion.png" rel="noopener noreferrer" target="_blank"><img alt="New issue for a single discussion" class="lazy" data-src="img/preview_issue_for_discussion.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<h3 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#only-allow-merge-requests-to-be-merged-if-all-discussions-are-resolved" id="user-content-only-allow-merge-requests-to-be-merged-if-all-discussions-are-resolved"></a>Only allow merge requests to be merged if all discussions are resolved</h3>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/7125" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 8.14.</p>
|
|
</blockquote>
|
|
<p dir="auto">You can prevent merge requests from being merged until all discussions are
|
|
resolved.</p>
|
|
<p dir="auto">Navigate to your project's settings page, select the
|
|
<strong>Only allow merge requests to be merged if all discussions are resolved</strong> check
|
|
box and hit <strong>Save</strong> for the changes to take effect.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/only_allow_merge_if_all_discussions_are_resolved.png" rel="noopener noreferrer" target="_blank"><img alt="Only allow merge if all the discussions are resolved settings" class="lazy" data-src="img/only_allow_merge_if_all_discussions_are_resolved.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">From now on, you will not be able to merge from the UI until all discussions
|
|
are resolved.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/only_allow_merge_if_all_discussions_are_resolved_msg.png" rel="noopener noreferrer" target="_blank"><img alt="Only allow merge if all the discussions are resolved message" class="lazy" data-src="img/only_allow_merge_if_all_discussions_are_resolved_msg.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<h3 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#automatically-resolve-merge-request-diff-discussions-when-they-become-outdated" id="user-content-automatically-resolve-merge-request-diff-discussions-when-they-become-outdated"></a>Automatically resolve merge request diff discussions when they become outdated</h3>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14053" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 10.0.</p>
|
|
</blockquote>
|
|
<p dir="auto">You can automatically resolve merge request diff discussions on lines modified
|
|
with a new push.</p>
|
|
<p dir="auto">Navigate to your project's settings page, select the <strong>Automatically resolve
|
|
merge request diffs discussions on lines changed with a push</strong> check box and hit
|
|
<strong>Save</strong> for the changes to take effect.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/automatically_resolve_outdated_discussions.png" rel="noopener noreferrer" target="_blank"><img alt="Automatically resolve merge request diff discussions when they become outdated" class="lazy" data-src="img/automatically_resolve_outdated_discussions.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">From now on, any discussions on a diff will be resolved by default if a push
|
|
makes that diff section outdated. Discussions on lines that don't change and
|
|
top-level resolvable discussions are not automatically resolved.</p>
|
|
<h2 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#commit-discussions" id="user-content-commit-discussions"></a>Commit discussions</h2>
|
|
<p dir="auto">You can add comments and discussion threads to a particular commit under your
|
|
project's <strong>Repository > Commits</strong>.</p>
|
|
<p dir="auto">CAUTION: <strong>Attention:</strong>
|
|
Discussions created this way will be lost if the commit ID changes after a
|
|
force push.</p>
|
|
<h2 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#threaded-discussions" id="user-content-threaded-discussions"></a>Threaded discussions</h2>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/7527" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 9.1.</p>
|
|
</blockquote>
|
|
<p dir="auto">While resolvable discussions are only available to merge request diffs,
|
|
discussions can also be added without a diff. You can start a specific
|
|
discussion which will look like a thread, on issues, commits, snippets, and
|
|
merge requests.</p>
|
|
<p dir="auto">To start a threaded discussion, click on the <strong>Comment</strong> button toggle dropdown,
|
|
select <strong>Start discussion</strong> and click <strong>Start discussion</strong> when you're ready to
|
|
post the comment.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/comment_type_toggle.gif" rel="noopener noreferrer" target="_blank"><img alt="Comment type toggle" class="lazy" data-src="img/comment_type_toggle.gif" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">This will post a comment with a single thread to allow you to discuss specific
|
|
comments in greater detail.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/discussion_comment.png" rel="noopener noreferrer" target="_blank"><img alt="Discussion comment" class="lazy" data-src="img/discussion_comment.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<h2 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#image-discussions" id="user-content-image-discussions"></a>Image discussions</h2>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14061" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 10.1.</p>
|
|
</blockquote>
|
|
<p dir="auto">Sometimes a discussion is revolved around an image. With image discussions,
|
|
you can easily target a specific coordinate of an image and start a discussion
|
|
around it. Image discussions are available in merge requests and commit detail views.</p>
|
|
<p dir="auto">To start an image discussion, hover your mouse over the image. Your mouse pointer
|
|
should convert into an icon, indicating that the image is available for commenting.
|
|
Simply click anywhere on the image to create a new discussion.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/start_image_discussion.gif" rel="noopener noreferrer" target="_blank"><img alt="Start image discussion" class="lazy" data-src="img/start_image_discussion.gif" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">After you click on the image, a comment form will be displayed that would be the start
|
|
of your discussion. Once you save your comment, you will see a new badge displayed on
|
|
top of your image. This badge represents your discussion.</p>
|
|
<blockquote dir="auto">
|
|
<p><strong>Note:</strong>
|
|
This discussion badge is typically associated with a number that is only used as a visual
|
|
reference for each discussion. In the merge request discussion tab,
|
|
this badge will be indicated with a comment icon since each discussion will render a new
|
|
image section.</p>
|
|
</blockquote>
|
|
<p dir="auto">Image discussions also work on diffs that replace an existing image. In this diff view
|
|
mode, you can toggle the different view modes and still see the discussion point badges.</p>
|
|
<table dir="auto">
|
|
<thead>
|
|
<tr>
|
|
<th align="center">2-up</th>
|
|
<th align="center">Swipe</th>
|
|
<th align="center">Onion Skin</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td align="center"><a class="no-attachment-icon" href="/img/two_up_view.png" rel="noopener noreferrer" target="_blank"><img alt="2-up view" class="lazy" data-src="img/two_up_view.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></td>
|
|
<td align="center"><a class="no-attachment-icon" href="/img/swipe_view.png" rel="noopener noreferrer" target="_blank"><img alt="swipe view" class="lazy" data-src="img/swipe_view.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></td>
|
|
<td align="center"><a class="no-attachment-icon" href="/img/onion_skin_view.png" rel="noopener noreferrer" target="_blank"><img alt="onion skin view" class="lazy" data-src="img/onion_skin_view.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p dir="auto">Image discussions also work well with resolvable discussions. Resolved discussions
|
|
on diffs (not on the merge request discussion tab) will appear collapsed on page
|
|
load and will have a corresponding badge counter to match the counter on the image.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/image_resolved_discussion.png" rel="noopener noreferrer" target="_blank"><img alt="Image resolved discussion" class="lazy" data-src="img/image_resolved_discussion.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<h2 dir="auto">
|
|
<a aria-hidden="true" class="anchor" href="#lock-discussions" id="user-content-lock-discussions"></a>Lock discussions</h2>
|
|
<blockquote dir="auto">
|
|
<p><a href="https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14531" rel="nofollow noreferrer noopener" target="_blank">Introduced</a> in GitLab 10.1.</p>
|
|
</blockquote>
|
|
<p dir="auto">For large projects with many contributors, it may be useful to stop discussions
|
|
in issues or merge requests in these scenarios:</p>
|
|
<ul dir="auto">
|
|
<li>The project maintainer has already resolved the discussion and it is not helpful
|
|
for continued feedback. The project maintainer has already directed new conversation
|
|
to newer issues or merge requests.</li>
|
|
<li>The people participating in the discussion are trolling, abusive, or otherwise
|
|
being unproductive.</li>
|
|
</ul>
|
|
<p dir="auto">In these cases, a user with Maintainer permissions or higher in the project can lock (and unlock)
|
|
an issue or a merge request, using the "Lock" section in the sidebar:</p>
|
|
<table dir="auto">
|
|
<thead>
|
|
<tr>
|
|
<th align="center">Unlock</th>
|
|
<th align="center">Lock</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td align="center"><a class="no-attachment-icon" href="/img/turn_off_lock.png" rel="noopener noreferrer" target="_blank"><img alt="Turn off discussion lock" class="lazy" data-src="img/turn_off_lock.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></td>
|
|
<td align="center"><a class="no-attachment-icon" href="/img/turn_on_lock.png" rel="noopener noreferrer" target="_blank"><img alt="Turn on discussion lock" class="lazy" data-src="img/turn_on_lock.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p dir="auto">System notes indicate locking and unlocking.</p>
|
|
<p dir="auto"><a class="no-attachment-icon" href="/img/discussion_lock_system_notes.png" rel="noopener noreferrer" target="_blank"><img alt="Discussion lock system notes" class="lazy" data-src="img/discussion_lock_system_notes.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></p>
|
|
<p dir="auto">In a locked issue or merge request, only team members can add new comments and
|
|
edit existing comments. Non-team members are restricted from adding or editing comments.</p>
|
|
<table dir="auto">
|
|
<thead>
|
|
<tr>
|
|
<th align="center">Team member</th>
|
|
<th align="center">Non-team member</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td align="center"><a class="no-attachment-icon" href="/img/lock_form_member.png" rel="noopener noreferrer" target="_blank"><img alt="Comment form member" class="lazy" data-src="img/lock_form_member.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></td>
|
|
<td align="center"><a class="no-attachment-icon" href="/img/lock_form_non_member.png" rel="noopener noreferrer" target="_blank"><img alt="Comment form non-member" class="lazy" data-src="img/lock_form_non_member.png" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="/></a></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|