{"id":655,"date":"2017-06-10T18:59:11","date_gmt":"2017-06-10T17:59:11","guid":{"rendered":"https:\/\/www.muratyaman.co.uk\/wp\/?p=655"},"modified":"2020-04-04T12:23:20","modified_gmt":"2020-04-04T11:23:20","slug":"the-forgotten-pull-requests-pr-of-a-new-breed-of-sherpas-in-the-himalayas","status":"publish","type":"post","link":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/2017\/06\/the-forgotten-pull-requests-pr-of-a-new-breed-of-sherpas-in-the-himalayas\/","title":{"rendered":"The Forgotten Pull Requests (PR) of a New Breed of Sherpas in the Himalayas"},"content":{"rendered":"<p>Pull Requests (PR) are a huge topic on Github and here is a whole &#8220;BOOK&#8221; about it on github:<\/p>\n<p><a href=\"https:\/\/help.github.com\/categories\/collaborating-with-issues-and-pull-requests\/\">https:\/\/help.github.com\/categories\/collaborating-with-issues-and-pull-requests\/<\/a><\/p>\n<p>Here is a short summary from me.<\/p>\n<p>1. a developer is forced to create a <strong>fork<\/strong> (separate copy) of a public repository (called <strong>upstream<\/strong> repo) on github because the repo does not belong to the developer or the developer is not part of the organisation\/team which owns and manages it.<\/p>\n<p>2. the developer clones the fork (called <strong>original<\/strong> repo but not original actually),which is owned by him\/her on github, on to his\/her local development machine. <\/p>\n<p>3. the developer switches to a (relevant) <strong>hotfix<\/strong> branch to work on an issue<\/p>\n<p>4. the developer modifies code as required and commits the changes with reference to an issue<\/p>\n<p>5. the developer pushes the committed changes to the fork.<\/p>\n<p>6. the developer creates a pull request from fork to the upstream<\/p>\n<p>7. an admin reviews the PR<br \/>\n7. a. approves the PR and merges them<br \/>\n7. b. rejects the PR; the developer has to repeat steps 4, 5, 6<br \/>\n7. c. i.   the PR is ignored for 2 years!<br \/>\n7. c. ii.  another admin reviews the PR after 2 years but there are many conflicts now<br \/>\n7. c. iii. the community is waiting for the developer, who is now a <strong>sherpa<\/strong> in The Himalayas, to update the PR!!! Because he\/she lost the will for coding!<\/p>\n<p><strong>Examples:<\/strong><\/p>\n<p>&#8211; <a href=\"https:\/\/github.com\/salesagility\/SuiteCRM\/pulls\">https:\/\/github.com\/salesagility\/SuiteCRM\/pulls<\/a><\/p>\n<p>&#8211; <a href=\"https:\/\/github.com\/symfony\/symfony\/pulls\">https:\/\/github.com\/symfony\/symfony\/pulls<\/a><\/p>\n<p>&#8211; <a href=\"https:\/\/github.com\/nodejs\/node\/pulls\">https:\/\/github.com\/nodejs\/node\/pulls<\/a><\/p>\n<p>&#8211; <a href=\"https:\/\/github.com\/facebook\/react\/pulls\">https:\/\/github.com\/facebook\/react\/pulls<\/a><\/p>\n<p>&#8211; <a href=\"https:\/\/github.com\/django\/django\/pulls\">https:\/\/github.com\/django\/django\/pulls<\/a><\/p>\n<p>&#8211; <a href=\"https:\/\/github.com\/torvalds\/linux\/pulls\">https:\/\/github.com\/torvalds\/linux\/pulls<\/a><\/p>\n<p>Such a <strong>waste<\/strong> of developer productivity, time ==> money!<\/p>\n<p>Image from <a href=\"https:\/\/au.pinterest.com\/pin\/441282463476843555\/\">https:\/\/au.pinterest.com\/pin\/441282463476843555\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pull Requests (PR) are a huge topic on Github and here is a whole &#8220;BOOK&#8221; about it on github &#8230;<\/p>\n","protected":false},"author":2,"featured_media":659,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[128,129],"class_list":["post-655","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology","tag-git","tag-vcs"],"_links":{"self":[{"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/posts\/655","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=655"}],"version-history":[{"count":11,"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/posts\/655\/revisions"}],"predecessor-version":[{"id":877,"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/posts\/655\/revisions\/877"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/media\/659"}],"wp:attachment":[{"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=655"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=655"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.muratyaman.co.uk\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=655"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}