{"id":11619,"date":"2017-07-24T12:23:02","date_gmt":"2017-07-24T12:23:02","guid":{"rendered":"https:\/\/www.process.st\/templates\/how-to-merge-a-pull-request\/"},"modified":"2024-02-28T20:45:54","modified_gmt":"2024-02-28T20:45:54","slug":"how-to-merge-a-pull-request","status":"publish","type":"post","link":"https:\/\/www.process.st\/templates\/how-to-merge-a-pull-request\/","title":{"rendered":"How to Merge a Pull Request"},"content":{"rendered":"<section id=\"introduction\">\n<h2> Introduction: <\/h2>\n<div class=\"text-content\">\n<p>After creating a pull request and getting approval, the next step is to <strong>merge<\/strong> it.<\/p>\n<p>This <strong>commits your changes to the master branch<\/strong>, so you need to be extra cautious that this process is done properly as to avoid bugs. To that end, this process includes steps for <strong>testing, demos, and other vital QC<\/strong>.<\/p>\n<p>Use this in conjunction with our <a href=\"https:\/\/www.process.st\/templates\/github-pull-request-procedure\/\" rel=\"nofollow noopener\" target=\"_blank\">GitHub pull request checklist<\/a>, and make sure to add the <a href=\"https:\/\/www.process.st\/templates\/pull-request-review-failed-procedure\" rel=\"nofollow noopener\" target=\"_blank\">failed review procedure<\/a> to your account, too!<\/p>\n<\/p><\/div>\n<\/section>\n<section id=\"record-a-link-to-the-pull-request\">\n<h2> Record a link to the pull request <\/h2>\n<\/section>\n<section id=\"check-if-the-pull-request-has-been-made-against-develop-branch\">\n<h2> Check if the pull request has been made against DEVELOP branch <\/h2>\n<div class=\"text-content\">\n<p><strong>Seriously, don't forget to check this!<\/strong><\/p>\n<\/p><\/div>\n<div class=\"image-content\">\n<figure>\n   <a href=\"https:\/\/st-process-production.s3.amazonaws.com\/179ea24c-0dfc-4ba9-af77-e202fb5fd882\/vqSyORdls6FUudDhGm1IQA.gif\" alt=\"Listen to Spidey...\" target=\"_blank\" rel=\"noopener\"> <img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/st-process-production.s3.amazonaws.com\/179ea24c-0dfc-4ba9-af77-e202fb5fd882\/vqSyORdls6FUudDhGm1IQA.gif\" \/> <\/a><figcaption>\n     Listen to Spidey...<br \/>\n   <\/figcaption><\/figure>\n<\/p><\/div>\n<\/section>\n<section id=\"review-the-code\">\n<h2> Review the code <\/h2>\n<div class=\"text-content\">\n<p>Do a review of the code so that you can send it back if there's any changes that have to be made from a first glance. Check for things like:<\/p>\n<\/p><\/div>\n<div class=\"multi-select-content form-field-content\">\n<ul class=\"items\">\n<li class=\"item\">\n<div class=\"step-number-container\">\n<div class=\"step-number\">\n       1\n     <\/div>\n<\/p><\/div>\n<div class=\"step-checkbox-container\">\n<div class=\"step-checkbox\"><\/div>\n<\/p><\/div>\n<div class=\"item-name-static\">\n      Code structure\n    <\/div>\n<\/li>\n<li class=\"item\">\n<div class=\"step-number-container\">\n<div class=\"step-number\">\n       2\n     <\/div>\n<\/p><\/div>\n<div class=\"step-checkbox-container\">\n<div class=\"step-checkbox\"><\/div>\n<\/p><\/div>\n<div class=\"item-name-static\">\n      Correctness\n    <\/div>\n<\/li>\n<li class=\"item\">\n<div class=\"step-number-container\">\n<div class=\"step-number\">\n       3\n     <\/div>\n<\/p><\/div>\n<div class=\"step-checkbox-container\">\n<div class=\"step-checkbox\"><\/div>\n<\/p><\/div>\n<div class=\"item-name-static\">\n      Naming issues\n    <\/div>\n<\/li>\n<li class=\"item\">\n<div class=\"step-number-container\">\n<div class=\"step-number\">\n       4\n     <\/div>\n<\/p><\/div>\n<div class=\"step-checkbox-container\">\n<div class=\"step-checkbox\"><\/div>\n<\/p><\/div>\n<div class=\"item-name-static\">\n      Readability\n    <\/div>\n<\/li>\n<li class=\"item\">\n<div class=\"step-number-container\">\n<div class=\"step-number\">\n       5\n     <\/div>\n<\/p><\/div>\n<div class=\"step-checkbox-container\">\n<div class=\"step-checkbox\"><\/div>\n<\/p><\/div>\n<div class=\"item-name-static\">\n      Anything else you think should be checked\n    <\/div>\n<\/li>\n<\/ul><\/div>\n<\/section>\n<section id=\"make-sure-theres-a-test\">\n<h2> Make sure there's a test <\/h2>\n<div class=\"text-content\">\n<p>Make sure at least one new test has been included, and that what is being tested&nbsp;makes sense.<\/p>\n<\/p><\/div>\n<div class=\"textarea-field-content form-field-content\">\n<div class=\"form-group\">\n   <label> Details of the test <\/label><br \/>\n   <textarea placeholder=\"Something will be typed here...\" rows=\"3\" disabled=\"disabled\" class=\"form-control\"><\/textarea>\n  <\/div>\n<\/p><\/div>\n<\/section>\n<section id=\"ideally-schedule-a-time-for-a-demo\">\n<h2> Ideally, schedule a time for a demo <\/h2>\n<div class=\"text-content\">\n<p>Get in touch with the one who made the PR so that he\/she can give you a demo and explain it to you.<\/p>\n<p><em>[Insert links to team member's calendars]<\/em><\/p>\n<\/p><\/div>\n<div class=\"text-field-content form-field-content\">\n<div class=\"form-group\">\n   <label> Demo scheduled with: <\/label><br \/>\n   <input type=\"text\" placeholder=\"Something will be typed here...\" disabled=\"disabled\" class=\"form-control\" \/>\n  <\/div>\n<\/p><\/div>\n<div class=\"date-field-content form-field-content\">\n<div class=\"form-group\">\n   <label> Demo scheduled on: <\/label> <\/p>\n<div class=\"date-container\">\n    <button type=\"button\" disabled=\"disabled\" class=\"btn btn-default\"> <i class=\"fa fa-calendar btn-icon\"><\/i> Date will be set here <\/button>\n   <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section>\n<section id=\"briefly-explain-how-the-pr-was-tested\">\n<h2> Briefly explain how the PR was tested <\/h2>\n<div class=\"text-content\">\n<p>You can either add a video from the Skype call, or explain in a brief paragraph what you did.<\/p>\n<\/p><\/div>\n<div class=\"textarea-field-content form-field-content\">\n<div class=\"form-group\">\n   <label> How was the PR tested? <\/label><br \/>\n   <textarea placeholder=\"Something will be typed here...\" rows=\"3\" disabled=\"disabled\" class=\"form-control\"><\/textarea>\n  <\/div>\n<\/p><\/div>\n<\/section>\n<section id=\"pull-the-changes-locally-and-verify-its-working-as-it-should\">\n<h2> Pull the changes locally and verify it's working as it should <\/h2>\n<div class=\"text-content\">\n<p>If everything goes well, pull it to your machine and test whatever you can think of that could break it locally, be creative \ud83d\ude42<\/p>\n<p>Also, check the code formatting just to be sure.<\/p>\n<\/p><\/div>\n<\/section>\n<section id=\"merge-it-and-assign-it-to-your-manager-for-review\">\n<h2> Merge it and assign it to your manager for review <\/h2>\n<div class=\"text-content\">\n<p>Are you really, really sure? Ok, then let's merge it!<\/p>\n<p>Don't forget to move it to&nbsp;Merge in JIRA, and assign to your manager for review.<\/p>\n<p>You can use the email widget below to automatically. It also pulls in the link to this checklist so they can see proof of testing, demoing, etc.<\/p>\n<\/p><\/div>\n<\/section>\n<section id=\"add-a-link-to-this-checklist-as-a-comment-on-the-issue-in-jira\">\n<h2> Add a link to this checklist as a comment on the issue in JIRA <\/h2>\n<\/section>\n<section id=\"sources\">\n<h2> Sources: <\/h2>\n<div class=\"text-content\">\n<ul>\n<li><a href=\"https:\/\/help.github.com\/\" rel=\"nofollow noopener\" target=\"_blank\">GitHub Help<\/a> - <a href=\"https:\/\/help.github.com\/articles\/merging-a-pull-request\/\" rel=\"nofollow noopener\" target=\"_blank\">Merging a pull request<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\" rel=\"nofollow noopener\" target=\"_blank\">Process Street<\/a> - <a href=\"https:\/\/www.process.st\/agile-processes\/\" rel=\"nofollow noopener\" target=\"_blank\">The 11 Agile Processes We Use to Run an Efficient Software Team<\/a><\/li>\n<\/ul><\/div>\n<\/section>\n<section id=\"related-checklists\">\n<h2> Related checklists: <\/h2>\n<div class=\"text-content\">\n<ul>\n<li><a href=\"https:\/\/www.process.st\/templates\/daily-standup-meeting-checklist\/\" rel=\"nofollow\">Daily Standup Meeting Checklist<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/sprint-turnover-process\" rel=\"nofollow\">Sprint Turnover Process<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/sprint-retrospective-process\/\" rel=\"nofollow\">Sprint Retrospective Process<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/sprint-estimation-process\/\" rel=\"nofollow\">Sprint Estimation Process<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/sprint-planning\/\" rel=\"nofollow\">Sprint Planning Process<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/scrum-project-management\/\" rel=\"nofollow\">Scrum Project Management<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/git-workflow\/\" rel=\"nofollow\">Git Workflow<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/user-story-template\/\" rel=\"nofollow\">User Story Template<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/software-deployment\/\" rel=\"nofollow\">Software Deployment<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/software-testing-tutorial\/\" rel=\"nofollow\">Software Testing Tutorial<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/software-debugging-process\/\" rel=\"nofollow\">Software Debugging Process<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/github-pull-request-procedure\/\" rel=\"nofollow\">GitHub Pull Request Procedure<\/a><\/li>\n<li><a href=\"https:\/\/www.process.st\/templates\/pull-request-review-failed-procedure\/\" rel=\"nofollow\">Pull Request Review Failed Procedure<\/a><\/li>\n<\/ul><\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Introduction: After creating a pull request and getting approval, the next step is to merge it. This commits your changes to the master branch, so you need to be extra cautious that this process is done properly as to avoid bugs. To that end, this process includes steps for testing, demos, and other vital QC. [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"ep_exclude_from_search":false,"cover_icon_emoji":"","cover_icon_url":"","tasks_count":"12","template_description":"Run a checklist every time when reviewing and merging a pull request so that the correct procedure is followed.","template_id":"jcleiL8d_jbtapEbuhZAxg","task_0":"Introduction:","task_slug_0":"introduction","task_1":"Record a link to the pull request","task_slug_1":"record-a-link-to-the-pull-request","task_2":"Check if the pull request has been made against DEVELOP branch","task_slug_2":"check-if-the-pull-request-has-been-made-against-develop-branch","task_3":"Review the code","task_slug_3":"review-the-code","task_4":"Make sure there's a test","task_slug_4":"make-sure-theres-a-test","task_5":"Ideally, schedule a time for a demo","task_slug_5":"ideally-schedule-a-time-for-a-demo","task_6":"Briefly explain how the PR was tested","task_slug_6":"briefly-explain-how-the-pr-was-tested","task_7":"Pull the changes locally and verify it's working as it should","task_slug_7":"pull-the-changes-locally-and-verify-its-working-as-it-should","task_8":"Merge it and assign it to your manager   for review","task_slug_8":"merge-it-and-assign-it-to-your-manager-for-review","task_9":"Add a link to this checklist as a comment on the  issue in JIRA","task_slug_9":"add-a-link-to-this-checklist-as-a-comment-on-the-issue-in-jira","task_10":"Sources:","task_slug_10":"sources","task_11":"Related checklists:","task_slug_11":"related-checklists","task_12":"","task_slug_12":"","task_13":"","task_slug_13":"","task_14":"","task_slug_14":"","task_15":"","task_slug_15":"","task_16":"","task_slug_16":"","task_17":"","task_slug_17":"","task_18":"","task_slug_18":"","task_19":"","task_slug_19":"","task_20":"","task_slug_20":"","task_21":"","task_slug_21":"","task_22":"","task_slug_22":"","task_23":"","task_slug_23":"","task_24":"","task_slug_24":"","task_25":"","task_slug_25":"","task_26":"","task_slug_26":"","task_27":"","task_slug_27":"","task_28":"","task_slug_28":"","task_29":"","task_slug_29":"","task_30":"","task_slug_30":"","task_31":"","task_slug_31":"","task_32":"","task_slug_32":"","task_33":"","task_slug_33":"","task_34":"","task_slug_34":"","task_35":"","task_slug_35":"","task_36":"","task_slug_36":"","task_37":"","task_slug_37":"","task_38":"","task_slug_38":"","task_39":"","task_slug_39":"","task_40":"","task_slug_40":"","task_41":"","task_slug_41":"","task_42":"","task_slug_42":"","task_43":"","task_slug_43":"","task_44":"","task_slug_44":"","task_45":"","task_slug_45":"","task_46":"","task_slug_46":"","task_47":"","task_slug_47":"","task_48":"","task_slug_48":"","task_49":"","task_slug_49":"","task_50":"","task_slug_50":"","task_51":"","task_slug_51":"","task_52":"","task_slug_52":"","task_53":"","task_slug_53":"","task_54":"","task_slug_54":"","task_55":"","task_slug_55":"","task_56":"","task_slug_56":"","task_57":"","task_slug_57":"","task_58":"","task_slug_58":"","task_59":"","task_slug_59":"","task_60":"","task_slug_60":"","task_61":"","task_slug_61":"","task_62":"","task_slug_62":"","task_63":"","task_slug_63":"","task_64":"","task_slug_64":"","task_65":"","task_slug_65":"","task_66":"","task_slug_66":"","task_67":"","task_slug_67":"","task_68":"","task_slug_68":"","task_69":"","task_slug_69":"","task_70":"","task_slug_70":"","task_71":"","task_slug_71":"","task_72":"","task_slug_72":"","task_73":"","task_slug_73":"","task_74":"","task_slug_74":"","task_75":"","task_slug_75":"","task_76":"","task_slug_76":"","task_77":"","task_slug_77":"","task_78":"","task_slug_78":"","task_79":"","task_slug_79":"","task_80":"","task_slug_80":"","task_81":"","task_slug_81":"","task_82":"","task_slug_82":"","task_83":"","task_slug_83":"","task_84":"","task_slug_84":"","task_85":"","task_slug_85":"","task_86":"","task_slug_86":"","task_87":"","task_slug_87":"","task_88":"","task_slug_88":"","task_89":"","task_slug_89":"","task_90":"","task_slug_90":"","task_91":"","task_slug_91":"","task_92":"","task_slug_92":"","task_93":"","task_slug_93":"","task_94":"","task_slug_94":"","task_95":"","task_slug_95":"","task_96":"","task_slug_96":"","task_97":"","task_slug_97":"","task_98":"","task_slug_98":"","task_99":"","task_slug_99":"","footnotes":""},"categories":[7,1],"tags":[],"class_list":["post-11619","post","type-post","status-publish","format-standard","hentry","category-miscellaneous","category-uncategorized"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/posts\/11619","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/comments?post=11619"}],"version-history":[{"count":0,"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/posts\/11619\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/media?parent=11619"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/categories?post=11619"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.process.st\/templates\/wp-json\/wp\/v2\/tags?post=11619"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}