{"id":158813,"date":"2021-01-20T16:00:16","date_gmt":"2021-01-20T13:00:16","guid":{"rendered":"https:\/\/en.buradabiliyorum.com\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/"},"modified":"2021-01-20T16:00:16","modified_gmt":"2021-01-20T13:00:16","slug":"how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it","status":"publish","type":"post","link":"https:\/\/buradabiliyorum.com\/en\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/","title":{"rendered":"#How to Conduct Code Reviews with GitLab\u2019s Merge Requests \u2013 CloudSavvy IT"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a38bb09290bf\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #dd3333;color:#dd3333\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #dd3333;color:#dd3333\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a38bb09290bf\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/#Creating_a_Merge_Request\" >Creating a Merge Request<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/#Creating_Merge_Requests_from_Your_Terminal\" >Creating Merge Requests from Your Terminal<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/#Reviewing_Merge_Requests\" >Reviewing Merge Requests<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/#Making_Changes_to_Your_Code\" >Making Changes to Your Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/#Draft_Work-in-Progress_Merge_Requests\" >Draft (Work-in-Progress) Merge Requests<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/buradabiliyorum.com\/en\/how-to-conduct-code-reviews-with-gitlabs-merge-requests-cloudsavvy-it\/#Completing_Your_Review\" >Completing Your Review<\/a><\/li><\/ul><\/nav><\/div>\n<p><strong>&#8220;#How to Conduct Code Reviews with GitLab\u2019s Merge Requests \u2013 CloudSavvy IT&#8221;<\/strong><\/p>\n<div id=\"article-content-area\">\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2242\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/a9dd1f717cc7b5354632598922bcc2f0\/p\/uploads\/2019\/10\/73a5aadf.png\" alt=\"\" width=\"700\" height=\"299\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>GitLab\u2019s Merge Requests are your chance to review code before it enters your project\u2019s main branch. A Merge Request (MR) is a wr<a href=\"https:\/\/buradabiliyorum.com\/en\/category\/download-scripts-themes-apps\/\" data-internallinksmanager029f6b8e52c=\"9\" title=\"Download Scripts &amp; Themes &amp; Apps\" target=\"_blank\" rel=\"noopener\">app<\/a>er around a <code>git merge<\/code> operation that\u2019s accessible within the GitLab web UI. Once you\u2019ve reviewed your code, you can initiate the merge with a single click. Adopting an MR-driven workflow helps you guarantee code quality by creating an expectation that all commits are thoroughly reviewed.<\/p>\n<p>Merge Requests are one of the foundational elements of the GitLab experience. They combine its project management, repository and CI\/CD systems into a single page for each change in your codebase. We\u2019re using the open-source GitLab CE in this article. Commercial tiers have access to additional features.<\/p>\n<h2 id=\"creating-a-merge-request\"><span class=\"ez-toc-section\" id=\"Creating_a_Merge_Request\"><\/span>Creating a Merge Request<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9052\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/c87cd70a89e4b22c53edbb6a5a2d515d\/p\/uploads\/2021\/01\/8e1249dd.jpeg\" alt=\"Screenshot of creating a merge request in GitLab\" width=\"582\" height=\"452\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>You can create a new MR from within GitLab by navigating to Repository &gt; Branches in the sidebar. Make sure you\u2019ve pushed the changes on your local branch up to GitLab. Find the branch you\u2019d like to merge and click the \u201cMerge request\u201d button to the right of its name.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9051\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/dc564c62eb5522049900b9e316f9ca1c\/p\/uploads\/2021\/01\/d75c9335.jpeg\" alt=\"Screenshot of creating a merge request in GitLab\" width=\"877\" height=\"367\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Use the form to define the properties of your merge request. Start by titling your new MR. Next, add a description. Standards for descriptions vary by organisation and by project. In <a href=\"https:\/\/buradabiliyorum.com\/en\/category\/general\/\" data-internallinksmanager029f6b8e52c=\"3\" title=\"General\" target=\"_blank\" rel=\"noopener\">general<\/a>, you\u2019ll want to note down any important changes you\u2019ve made, as well as the reasoning behind them.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9053\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/13dfc066335d80cdefb3266bf1e7036c\/p\/uploads\/2021\/01\/d5f5f096.jpeg\" alt=\"Screenshot of creatng a merge request in GitLab\" width=\"962\" height=\"677\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>At the bottom of the page, you\u2019ll find controls for setting the MR\u2019s assignee, reviewer, milestone and labels. These can be amended at any time using the right sidebar on the merge request details page. We\u2019ll cover them in more detail later on.<\/p>\n<p>You can complete an initial review without submitting your MR. Use the \u201cCommits\u201d and \u201cChanges\u201d tabs to confirm you\u2019ve included the correct code. Once you\u2019re ready, hit the green \u201cSubmit merge request\u201d button to open the MR. You can view all the MRs in your project using the \u201cMerge Requests\u201d link in the sidebar.<\/p>\n<h2 id=\"creating-merge-requests-from-your-terminal\"><span class=\"ez-toc-section\" id=\"Creating_Merge_Requests_from_Your_Terminal\"><\/span>Creating Merge Requests from Your Terminal<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Creating MRs through the GitLab UI encourages you to accurately tag the MR with labels, milestones and descriptive text. Nonetheless, it\u2019s a laborious process which can consume substantial time through the day. GitLab supports Git push options that allow you to push a branch and create an MR at the same time.<\/p>\n<pre>git push -u origin HEAD -o merge_request.create -o merge_request.target=master<\/pre>\n<p>Using <code>git push<\/code> with the options shown above will push your current branch to your Git remote. The remote branch will be created anew, using the same name as your local branch, if it doesn\u2019t already exist. The two <code>-o<\/code> options will be processed by GitLab. They\u2019ll result in a new MR being opened to merge your branch into <code>master<\/code>.<\/p>\n<p>GitLab will automatically populate the MR\u2019s title and description using information from your latest commit. In addition, you can reference a GitLab issue in your commit message \u2013 e.g.\u00a0<code>Fixes #123<\/code> \u2013 to have GitLab automatically apply its labels and milestones to the MR.<\/p>\n<h2 id=\"reviewing-merge-requests\"><span class=\"ez-toc-section\" id=\"Reviewing_Merge_Requests\"><\/span>Reviewing Merge Requests<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>No code is complete until it\u2019s been reviewed. You can easily request others in your group to give your commits the once-over. Use the right sidebar to select one or more reviewers. They\u2019ll be notified of your request.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9050\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/8e8037b170ae6762c45907287a3a9a06\/p\/uploads\/2021\/01\/2d790019.jpeg\" alt=\"Screenshot of merge request reviewers in GitLab\" width=\"887\" height=\"437\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>You may also assign your MR to another user. This might indicate that they need to update their areas of responsibility to add compatibility with your changes. There\u2019s no hard-and-fast rules on how you should use these features.<\/p>\n<p>When you\u2019re tasked with reviewing an MR, switch to the \u201cCommits\u201d and \u201cChanges\u201d tabs at the top of the screen. The former gives a list of all the new commits on your branch while the latter presents the file diffs to apply to the codebase.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9049\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/2f6cc38b2e32b0a3916c5a9e1c0ccf68\/p\/uploads\/2021\/01\/aa5483e2.jpeg\" alt=\"Screenshot of GitLab's merge request diff settings\" width=\"887\" height=\"432\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>You can adjust the layout of the Changes screen using the settings cog in the top-right. You can choose between Inline and Side-by-Side diffs, the latter displaying the \u201cold\u201d and \u201cnew\u201d versions of files in a split view. You can help yourself focus, and improve the screen\u2019s performance, by enabling the \u201cShow one file at a time\u201d option.<\/p>\n<h2 id=\"making-changes-to-your-code\"><span class=\"ez-toc-section\" id=\"Making_Changes_to_Your_Code\"><\/span>Making Changes to Your Code<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Despite all your best efforts, sometimes you\u2019ll review your MR and discover an issue you hadn\u2019t spotted before. You don\u2019t need to head straight back to your code editor though. The Changes screen has provisions available to help you correct errors as you find them.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9048\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/735461333dbb1a20a7f038a71b8dd19a\/p\/uploads\/2021\/01\/729369da.jpeg\" alt=\"Screenshot of adding a comment against in a source line in a GitLab merge request\" width=\"877\" height=\"387\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>For simple one-line fixes, hover over the line in question. Click the comment icon that appears to the left of the line. The comment editor will appear, featuring GitLab\u2019s standard Markdown editor. You can use this facility to comment on specific lines in your MR \u2013 your messages will appear back on the \u201cOverview\u201d tab. We\u2019re looking for a specific feature though, the \u201cInsert suggestion\u201d button on the toolbar.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9047\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/47d1ecf64e904702a6c3d78b3132bf11\/p\/uploads\/2021\/01\/08bf8eea.jpeg\" alt=\"Screenshot of suggestions in GitLab merge requests\" width=\"877\" height=\"387\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Click the button to insert the selected line into your comment. Use the comment editor to edit the line to what it <em>should<\/em> look like. Next, click either \u201cStart a review\u201d or \u201cAdd comment now\u201d. The former lets you hold multiple comments together to submit as a batch once you\u2019ve completed your review.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9046\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/9573adaecf0fd283dc69e94c22b57187\/p\/uploads\/2021\/01\/3f8abf05.jpeg\" alt=\"Screenshot of suggestions in GitLab merge requests\" width=\"942\" height=\"387\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Once you\u2019ve saved your comment, you\u2019ll see a \u201cSuggested change\u201d widget appear below the suspect line. This will display the new diff to apply. Click the \u201cApply suggestion\u201d button to instantly add your change.<\/p>\n<p>Using Suggestions can dramatically reduce the time to fix minor issues as you don\u2019t need to leave your browser. For longer edits, you may click the three dots icon next to any file on the Changes screen to open it in the full GitLab Web IDE.<\/p>\n<h2 id=\"draft-work-in-progress-merge-requests\"><span class=\"ez-toc-section\" id=\"Draft_Work-in-Progress_Merge_Requests\"><\/span>Draft (Work-in-Progress) Merge Requests<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Sometimes you\u2019ll want to push code before it\u2019s ready to merge. You can distinguish these MRs by prefixing their title with \u201cDraft\u201d or clicking the toolbar button. Draft MRs cannot be merged until you manually revoke their draft status by clicking \u201cMark as ready\u201d in the top-right.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9043\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/655ca24594bdaaf84b10213bf0cf481f\/p\/uploads\/2021\/01\/d246ca25.jpeg\" alt=\"Screenshot of GitLab draft merge request\" width=\"972\" height=\"242\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>This functionality used to be called \u201cWork-in-Progress,\u201d using the \u201cWIP\u201d title prefix. That terminology has now been abandoned in favour of \u201cDraft,\u201d which will be the only supported variant in GitLab 14. Both forms are available in GitLab 13.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9045\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/f7e9f52eca4862d301e44150f941a122\/p\/uploads\/2021\/01\/83c94a39.jpeg\" alt=\"Screenshot showing extra commits added to a GitLab merge request\" width=\"952\" height=\"387\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>As you add commits to your MRs, they\u2019ll be listed on the Overview section of the MR page. You can click the \u201cCompare with previous version\u201d link to see the diff of these changes in isolation.<\/p>\n<p>Clicking the \u201cChanges\u201d tab without choosing a version displays the diff of the entire MR relative to the target branch. You can view the diff of any two versions using the \u201cCompare [master] and [latest version]\u201d dropdowns at the top of the Changes screen.<\/p>\n<h2 id=\"completing-your-review\"><span class=\"ez-toc-section\" id=\"Completing_Your_Review\"><\/span>Completing Your Review<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Once you\u2019ve completed your review, it\u2019s time to merge your code. You\u2019ll need to revoke the MR\u2019s Draft status if it\u2019s been set. Depending on your project\u2019s settings, you might also have to \u201cresolve\u201d any comment threads which have been created.<\/p>\n<p>To signal the MR is ready to be merged, use the blue \u201cApprove\u201d button. This doesn\u2019t take any action within GitLab except signalling to your team that the MR has been accepted. You can then go ahead and merge the MR by pressing the green \u201cMerge\u201d button.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9044\" src=\"https:\/\/www.cloudsavvyit.com\/thumbcache\/0\/0\/1cff86400e28b0792befa00864e0a04e\/p\/uploads\/2021\/01\/e022501d.jpeg\" alt=\"Screenshot of approving and merging a GitLab merge request\" width=\"762\" height=\"532\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Use the \u201cDelete source branch\u201d checkbox to control whether the branch gets deleted after the merge. This helps keep your branches list lean but could lead to loss of context in the future. The \u201cSquash commits\u201d option lets you combine all the commits in the MR into one. This creates a tidier commit history but will make it harder to revert individual changes in the future. The availability of these options will depend on settings defined within your project and your group.<\/p>\n<p>Merge Requests provide a good structure for writing and reviewing code. At the same time, they\u2019re extremely flexible and open to interpretation. It\u2019s up to you how far you develop your merge request workflow.<\/p>\n<p>In this article, we\u2019ve only looked at the features directly relevant to a code reviewer. You might see much more information in your merge requests if you make use of GitLab\u2019s other features. The Overview page can exhibit CI pipeline status, test and code quality reports, security scan outputs and staging environment links, all of which make the MR page your first destination when understanding how a change will impact your project.\n<\/p><\/div>\n<blockquote><p><strong><span style=\"color: #ff6600;\">If you liked the article, do not forget to share it with your friends. Follow us on\u00a0<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/news.google.com\/publications\/CAAqBwgKMLG0nwswvr63Aw\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Google News<\/a><\/span>\u00a0too, click on the star and choose us from your favorites.<\/span><\/strong><\/p><\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\">For forums sites go to <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/forum.buradabiliyorum.com\/\" target=\"_blank\" rel=\"noopener\">Forum.BuradaBiliyorum.Com<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\"><strong>If you want to read more like this article, you can visit our <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/en.buradabiliyorum.com\/technology\/\" target=\"_blank\" rel=\"noopener\">Technology category.<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<p><span style=\"color: black;\"><a style=\"color: #ff9900;\" href=\"https:\/\/www.cloudsavvyit.com\/9031\/how-to-conduct-code-reviews-with-gitlabs-merge-requests\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;#How to Conduct Code Reviews with GitLab\u2019s Merge Requests \u2013 CloudSavvy IT&#8221; GitLab\u2019s Merge Requests are your chance to review code before it enters your project\u2019s main branch. A Merge Request (MR) is a wrapper around a git merge operation that\u2019s accessible within the GitLab web UI. Once you\u2019ve reviewed your code, you can initiate&#8230;<\/p>\n","protected":false},"author":1,"featured_media":158814,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/www.cloudsavvyit.com\/p\/uploads\/2019\/10\/73a5aadf.png","fifu_image_alt":"","footnotes":""},"categories":[18],"tags":[],"class_list":["post-158813","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/158813","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/comments?post=158813"}],"version-history":[{"count":0,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/158813\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media\/158814"}],"wp:attachment":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media?parent=158813"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/categories?post=158813"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/tags?post=158813"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}