CINXE.COM
Features · Code review · GitHub
<!DOCTYPE html> <html lang="en"> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("https://web.archive.org/web"); __wm.wombat("https://github.com/features/code-review","20211121183500","https://web.archive.org/","web","/_static/", "1637519700"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <meta charset="utf-8"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211121183500/https://github.githubassets.com/"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211121183500/https://avatars.githubusercontent.com/"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211121183500/https://github-cloud.s3.amazonaws.com/"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211121183500/https://user-images.githubusercontent.com/"> <link rel="preconnect" href="https://web.archive.org/web/20211121183500/https://github.githubassets.com/" crossorigin> <link rel="preconnect" href="https://web.archive.org/web/20211121183500/https://avatars.githubusercontent.com/"> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211121183500cs_/https://github.githubassets.com/assets/light-d46e2b60992dc114d02a7edf55f254c4.css"/><link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211121183500cs_/https://github.githubassets.com/assets/dark-848e5bda8a9313d9e37e362b7eecd7a8.css"/><link data-color-theme="light" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/light-d46e2b60992dc114d02a7edf55f254c4.css"/><link data-color-theme="dark" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark-848e5bda8a9313d9e37e362b7eecd7a8.css"/><link data-color-theme="dark_dimmed" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed-92541d6f7b75e0061a44c901d2ff5bb9.css"/><link data-color-theme="dark_high_contrast" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_high_contrast-081b1fa41be0d43fc7be7f05158e09c1.css"/><link data-color-theme="dark_colorblind" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind-d3d8a99329c0b730aa6ac9760f6fff37.css"/><link data-color-theme="light_colorblind" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind-389c270bfa4674e57740ca16b9df2fa7.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211121183500cs_/https://github.githubassets.com/assets/frameworks-4f7378e77856098b0bf3229fbb7cb27b.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211121183500cs_/https://github.githubassets.com/assets/behaviors-f3a9d72bb1bfd685a5472d6f3ce39093.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211121183500cs_/https://github.githubassets.com/assets/tab-size-fix-30224561f6d0a13e045c2e9a5b1e5682.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211121183500cs_/https://github.githubassets.com/assets/site-a989d4eeb1c91cc734e3c76bdc84726d.css"/> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211121183500js_/https://github.githubassets.com/assets/environment-2bf92300.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211121183500js_/https://github.githubassets.com/assets/chunk-frameworks-a010e3b0.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211121183500js_/https://github.githubassets.com/assets/chunk-vendor-d15f4577.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211121183500js_/https://github.githubassets.com/assets/behaviors-0fe4eee2.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-unveil.js" data-src="https://github.githubassets.com/assets/chunk-unveil-383649cc.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-animate-on-scroll.js" data-src="https://github.githubassets.com/assets/chunk-animate-on-scroll-7a63e051.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-input-demux.js" data-src="https://github.githubassets.com/assets/chunk-input-demux-c7a2fde2.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-ref-selector.js" data-src="https://github.githubassets.com/assets/chunk-ref-selector-77dccb93.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-filter-input.js" data-src="https://github.githubassets.com/assets/chunk-filter-input-a83ff9b7.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-edit.js" data-src="https://github.githubassets.com/assets/chunk-edit-ca75799c.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-responsive-underlinenav.js" data-src="https://github.githubassets.com/assets/chunk-responsive-underlinenav-1a1a870c.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-tag-input.js" data-src="https://github.githubassets.com/assets/chunk-tag-input-826c3ba1.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-notification-list-focus.js" data-src="https://github.githubassets.com/assets/chunk-notification-list-focus-028f6594.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-cookies.js" data-src="https://github.githubassets.com/assets/chunk-cookies-48f59dde.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-slug.js" data-src="https://github.githubassets.com/assets/chunk-slug-e2f551a6.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-async-export.js" data-src="https://github.githubassets.com/assets/chunk-async-export-30ae7719.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-premium-runners.js" data-src="https://github.githubassets.com/assets/chunk-premium-runners-b70f5202.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-get-repo-element.js" data-src="https://github.githubassets.com/assets/chunk-get-repo-element-0f9efa0a.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-color-modes.js" data-src="https://github.githubassets.com/assets/chunk-color-modes-c614803b.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-copy.js" data-src="https://github.githubassets.com/assets/chunk-copy-8e2b71a2.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-voting.js" data-src="https://github.githubassets.com/assets/chunk-voting-b0078bef.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-confetti.js" data-src="https://github.githubassets.com/assets/chunk-confetti-1c3b0b25.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-codemirror.js" data-src="https://github.githubassets.com/assets/chunk-codemirror-266f7585.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-tip.js" data-src="https://github.githubassets.com/assets/chunk-tip-1abdd970.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-line.js" data-src="https://github.githubassets.com/assets/chunk-line-11d42f96.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-array.js" data-src="https://github.githubassets.com/assets/chunk-array-e334873f.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-band.js" data-src="https://github.githubassets.com/assets/chunk-band-83c7dbe9.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-toast.js" data-src="https://github.githubassets.com/assets/chunk-toast-ea8582bb.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-delayed-loading-element.js" data-src="https://github.githubassets.com/assets/chunk-delayed-loading-element-9a26a267.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-three.module.js" data-src="https://github.githubassets.com/assets/chunk-three.module-183db908.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-invitations.js" data-src="https://github.githubassets.com/assets/chunk-invitations-39f93b75.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-profile.js" data-src="https://github.githubassets.com/assets/chunk-profile-bc547e22.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-overview.js" data-src="https://github.githubassets.com/assets/chunk-overview-15e46e8d.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-advanced.js" data-src="https://github.githubassets.com/assets/chunk-advanced-c6ac36df.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-runner-groups.js" data-src="https://github.githubassets.com/assets/chunk-runner-groups-e9199dd0.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-profile-pins-element.js" data-src="https://github.githubassets.com/assets/chunk-profile-pins-element-e47e4dff.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-emoji-picker-element.js" data-src="https://github.githubassets.com/assets/chunk-emoji-picker-element-2eb0f690.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-edit-hook-secret-element.js" data-src="https://github.githubassets.com/assets/chunk-edit-hook-secret-element-12f27616.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-insights-query.js" data-src="https://github.githubassets.com/assets/chunk-insights-query-5b412284.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-remote-clipboard-copy.js" data-src="https://github.githubassets.com/assets/chunk-remote-clipboard-copy-0ffe4077.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-series-table.js" data-src="https://github.githubassets.com/assets/chunk-series-table-4948c5e6.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-line-chart.js" data-src="https://github.githubassets.com/assets/chunk-line-chart-9eb7e4b6.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-stacked-area-chart.js" data-src="https://github.githubassets.com/assets/chunk-stacked-area-chart-20e3066a.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-presence-avatars.js" data-src="https://github.githubassets.com/assets/chunk-presence-avatars-1a8843a5.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-pulse-authors-graph-element.js" data-src="https://github.githubassets.com/assets/chunk-pulse-authors-graph-element-4e91d321.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-stacks-input-config-view.js" data-src="https://github.githubassets.com/assets/chunk-stacks-input-config-view-68d01c14.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-community-contributions.js" data-src="https://github.githubassets.com/assets/chunk-community-contributions-3175dd2a.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-discussion-page-views.js" data-src="https://github.githubassets.com/assets/chunk-discussion-page-views-71eb7d86.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-discussions-daily-contributors.js" data-src="https://github.githubassets.com/assets/chunk-discussions-daily-contributors-e7ebf754.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-discussions-new-contributors.js" data-src="https://github.githubassets.com/assets/chunk-discussions-new-contributors-fcf492dd.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-tweetsodium.js" data-src="https://github.githubassets.com/assets/chunk-tweetsodium-7057bd5a.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-jump-to.js" data-src="https://github.githubassets.com/assets/chunk-jump-to-01529fa8.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-user-status-submit.js" data-src="https://github.githubassets.com/assets/chunk-user-status-submit-ae00780b.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-launch-code-element.js" data-src="https://github.githubassets.com/assets/chunk-launch-code-element-e31b6350.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-metric-selection-element.js" data-src="https://github.githubassets.com/assets/chunk-metric-selection-element-362955c7.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-severity-calculator-element.js" data-src="https://github.githubassets.com/assets/chunk-severity-calculator-element-1b3f4184.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-readme-toc-element.js" data-src="https://github.githubassets.com/assets/chunk-readme-toc-element-c971e4c2.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-feature-callout-element.js" data-src="https://github.githubassets.com/assets/chunk-feature-callout-element-5adc4562.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-action-list-element.js" data-src="https://github.githubassets.com/assets/chunk-action-list-element-cb134e70.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-sortable-behavior.js" data-src="https://github.githubassets.com/assets/chunk-sortable-behavior-3efc77ad.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-drag-drop.js" data-src="https://github.githubassets.com/assets/chunk-drag-drop-e895101e.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-contributions-spider-graph.js" data-src="https://github.githubassets.com/assets/chunk-contributions-spider-graph-dbca62a4.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-webgl-warp.js" data-src="https://github.githubassets.com/assets/chunk-webgl-warp-cb4cae89.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211121183500js_/https://github.githubassets.com/assets/marketing-7a97e703.js"></script> <meta name="viewport" content="width=device-width"> <title>Features · Code review · GitHub</title> <meta name="description" content="Make code review seamless with GitHub. Request reviews, propose changes, keep track of versions, and protect branches on the path to better code with your team."> <link rel="search" type="application/opensearchdescription+xml" href="/web/20211121183500/https://github.com/opensearch.xml" title="GitHub"> <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub"> <meta property="fb:app_id" content="1401488693436528"> <meta name="apple-itunes-app" content="app-id=1477376905"/> <meta name="twitter:image:src" content="https://github.githubassets.com/images/modules/site/social-cards/features.png"/><meta name="twitter:site" content="@github"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="GitHub features: Intuitive code review tools"/><meta name="twitter:description" content="Make code review seamless with GitHub. Request reviews, propose changes, keep track of versions, and protect branches on the path to better code with your team."/> <meta property="og:image" content="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/social-cards/features.png"/><meta property="og:image:alt" content="Make code review seamless with GitHub. Request reviews, propose changes, keep track of versions, and protect branches on the path to better code with your team."/><meta property="og:site_name" content="GitHub"/><meta property="og:type" content="object"/><meta property="og:title" content="GitHub features: Intuitive code review tools"/><meta property="og:url" content="https://web.archive.org/web/20211121183500/https://github.com/features/code-review"/><meta property="og:description" content="Make code review seamless with GitHub. Request reviews, propose changes, keep track of versions, and protect branches on the path to better code with your team."/> <link rel="assets" href="https://github.githubassets.com/"> <meta name="request-id" content="C1EC:5E18:344A87:5CF544:619A9154" data-pjax-transient="true"/><meta name="html-safe-nonce" content="a87ed6fa3edc67c7ce750144d163fd4f0bc4c348d260fe4be766bc768b7fdc8b" data-pjax-transient="true"/><meta name="visitor-payload" content="eyJyZWZlcnJlciI6Imh0dHBzOi8vZ2l0aHViLmNvbS8iLCJyZXF1ZXN0X2lkIjoiQzFFQzo1RTE4OjM0NEE4Nzo1Q0Y1NDQ6NjE5QTkxNTQiLCJ2aXNpdG9yX2lkIjoiNDMzMTcyMzUyODk3MjQzOTg2NSIsInJlZ2lvbl9lZGdlIjoic2VhIiwicmVnaW9uX3JlbmRlciI6InNlYSJ9" data-pjax-transient="true"/><meta name="visitor-hmac" content="277ac5a08d59699f40714deefe1937dd494a612995e8d4d8fb71ac8319d8cde9" data-pjax-transient="true"/> <meta name="github-keyboard-shortcuts" content="" data-pjax-transient="true"/> <meta name="selected-link" value="/features/code-review" data-pjax-transient> <meta name="google-site-verification" content="c1kuD-K2HIVF635lypcsWPoD4kilo5-jA_wBFyT4uMY"> <meta name="google-site-verification" content="KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU"> <meta name="google-site-verification" content="ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA"> <meta name="google-site-verification" content="GXs5KoUUkNCoaAZn7wPN-t01Pywp9M3sEjnt_3_ZWPc"> <meta name="octolytics-url" content="https://collector.githubapp.com/github/collect"/> <meta name="hostname" content="github.com"> <meta name="user-login" content=""> <meta name="expected-hostname" content="github.com"> <meta name="enabled-features" content="MARKETPLACE_PENDING_INSTALLATIONS,FILE_UPLOAD_CURSOR_POSITION"> <meta http-equiv="x-pjax-version" content="d9228c2b69840fdca18df9a317070944186d6e115569cc8e626bdcc14ef14cf6"> <meta http-equiv="x-pjax-csp-version" content="c0979729e9e85389165414d3f34018c575a631c7da5d7636830d482fbc38bd62"> <meta http-equiv="x-pjax-css-version" content="229cdb98cd7fabf6f35a529008b3bc98da22d14236c950a4ec0bed7b1223270a"> <meta http-equiv="x-pjax-js-version" content="59fc84afd383f86f05cde6c0b40f03d4a1eb7bdedf9071387a7c9e54dc11667f"> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211121183500cs_/https://github.githubassets.com/assets/site-legacy-0117cc67412e8ba7af8d709d04209127.css"/> <link rel="preload" href="https://web.archive.org/web/20211121183500/https://github.githubassets.com/static/fonts/alliance/Alliance-No-1-ExtraBold.woff2" as="font" type="font/woff" crossorigin> <link rel="preload" href="https://web.archive.org/web/20211121183500/https://github.githubassets.com/static/fonts/alliance/Alliance-No-1-Regular.woff2" as="font" type="font/woff" crossorigin> <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats"> <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors"> <meta name="browser-optimizely-client-errors-url" content="https://api.github.com/_private/browser/optimizely_client/errors"> <link rel="mask-icon" href="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/pinned-octocat.svg" color="#000000"> <link rel="alternate icon" class="js-site-favicon" type="image/png" href="https://github.githubassets.com/favicons/favicon.png"> <link rel="icon" class="js-site-favicon" type="image/svg+xml" href="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/favicons/favicon.svg"> <meta name="theme-color" content="#1e2327"> <link rel="manifest" href="/web/20211121183500/https://github.com/manifest.json" crossorigin="use-credentials"> </head> <body class="logged-out env-production page-responsive" style="word-wrap: break-word;"> <div class="position-relative js-header-wrapper "> <a href="#start-of-content" class="px-2 py-4 color-bg-accent-emphasis color-text-white show-on-focus js-skip-to-content">Skip to content</a> <span data-view-component="true" class="progress-pjax-loader js-pjax-loader-bar Progress position-fixed width-full"> <span style="width: 0%;" data-view-component="true" class="Progress-item progress-pjax-loader-bar color-bg-info-inverse"></span> </span> <header class="Header-old header-logged-out js-details-container Details position-relative f4 py-2" role="banner"> <div class="container-xl d-lg-flex flex-items-center p-responsive"> <div class="d-flex flex-justify-between flex-items-center"> <a class="mr-4 color-fg-inherit" href="https://web.archive.org/web/20211121183500/https://github.com/" aria-label="Homepage" data-ga-click="(Logged out) Header, go to homepage, icon:logo-wordmark"> <svg height="32" aria-hidden="true" viewbox="0 0 16 16" version="1.1" width="32" data-view-component="true" class="octicon octicon-mark-github"> <path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"></path> </svg> </a> <div class="d-lg-none css-truncate css-truncate-target width-fit p-2"> </div> <div class="d-flex flex-items-center"> <a href="/web/20211121183500/https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2Ffeatures%2Fcode-review&source=header" class="d-inline-block d-lg-none f5 no-underline border color-border-default rounded-2 px-2 py-1 mr-3 mr-sm-5 color-fg-inherit" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="8e4798ddce93fe29dd782ed4a87819a4074e05044169187550eb50dd36db12e9"> Sign up </a> <button aria-label="Toggle navigation" aria-expanded="false" type="button" data-view-component="true" class="js-details-target btn-link d-lg-none mt-1 color-fg-inherit"> <svg aria-hidden="true" height="24" viewbox="0 0 16 16" version="1.1" width="24" data-view-component="true" class="octicon octicon-three-bars"> <path fill-rule="evenodd" d="M1 2.75A.75.75 0 011.75 2h12.5a.75.75 0 110 1.5H1.75A.75.75 0 011 2.75zm0 5A.75.75 0 011.75 7h12.5a.75.75 0 110 1.5H1.75A.75.75 0 011 7.75zM1.75 12a.75.75 0 100 1.5h12.5a.75.75 0 100-1.5H1.75z"></path> </svg> </button> </div> </div> <div class="HeaderMenu HeaderMenu--logged-out position-fixed top-0 right-0 bottom-0 height-fit position-lg-relative d-lg-flex flex-justify-between flex-items-center flex-auto"> <div class="d-flex d-lg-none flex-justify-end border-bottom color-bg-subtle p-3"> <button aria-label="Toggle navigation" aria-expanded="false" type="button" data-view-component="true" class="js-details-target btn-link"> <svg aria-hidden="true" height="24" viewbox="0 0 24 24" version="1.1" width="24" data-view-component="true" class="octicon octicon-x color-fg-muted"> <path fill-rule="evenodd" d="M5.72 5.72a.75.75 0 011.06 0L12 10.94l5.22-5.22a.75.75 0 111.06 1.06L13.06 12l5.22 5.22a.75.75 0 11-1.06 1.06L12 13.06l-5.22 5.22a.75.75 0 01-1.06-1.06L10.94 12 5.72 6.78a.75.75 0 010-1.06z"></path> </svg> </button> </div> <nav class="mt-0 px-3 px-lg-0 mb-5 mb-lg-0" aria-label="Global"> <ul class="d-lg-flex list-style-none"> <li class="mr-0 mr-lg-3 position-relative flex-wrap flex-justify-between flex-items-center border-bottom border-lg-bottom-0 d-block d-lg-flex flex-lg-nowrap flex-lg-items-center"> <details class="HeaderMenu-details details-overlay details-reset width-full"> <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap d-block d-lg-inline-block"> Why GitHub? <svg x="0" y="0" viewbox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-absolute position-lg-relative"><path d="M1,1l6.2,6L13,1"></path></svg> </summary> <div class="dropdown-menu flex-auto rounded px-0 mt-0 pb-4 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4"> <ul class="list-style-none f5 pb-1"> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--primary text-bold py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Features","label":"ref_page:/features/code-review;ref_cta:Features;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="2057e980dbef697dd9620a765ad225742f293ef3b89ec65280d68e1401f82577" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Features","label":"ref_page:/features/code-review;ref_cta:Features;"}" href="/web/20211121183500/https://github.com/features"> Features <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Mobile","label":"ref_page:/features/code-review;ref_cta:Mobile;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="c36ff601117ed0fb18295bd2406effb6012779af0c8915b196e84de587a10cf8" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Mobile","label":"ref_page:/features/code-review;ref_cta:Mobile;"}" href="/web/20211121183500/https://github.com/mobile"> Mobile <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Actions","label":"ref_page:/features/code-review;ref_cta:Actions;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="62d74bcf8b562f75fdfa59f89319f03246b0c09c4a72c9dd9e6db5d8c7fd05df" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Actions","label":"ref_page:/features/code-review;ref_cta:Actions;"}" href="/web/20211121183500/https://github.com/features/actions"> Actions <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Codespaces","label":"ref_page:/features/code-review;ref_cta:Codespaces;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="63cbeada21442af007fdacb523e06757e3df64d1c93f7a3d235fe579c461d252" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Codespaces","label":"ref_page:/features/code-review;ref_cta:Codespaces;"}" href="/web/20211121183500/https://github.com/features/codespaces"> Codespaces <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Packages","label":"ref_page:/features/code-review;ref_cta:Packages;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="01008ad7641b32ddd9140ad2db902a68a1fd7832677154207eaf72f2e8a43a6f" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Packages","label":"ref_page:/features/code-review;ref_cta:Packages;"}" href="/web/20211121183500/https://github.com/features/packages"> Packages <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Security","label":"ref_page:/features/code-review;ref_cta:Security;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="28f2ae2c44378bcc1eae3a3aea68879ac23fa747e5a391b2c8879fc7b744b1f9" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Security","label":"ref_page:/features/code-review;ref_cta:Security;"}" href="/web/20211121183500/https://github.com/features/security"> Security <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Code review","label":"ref_page:/features/code-review;ref_cta:Code review;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="d370f2c3903ebf7935a95ba0d6e61556aa7289bdb4c284c2fb078129d0fd3c11" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Code review","label":"ref_page:/features/code-review;ref_cta:Code review;"}" href="/web/20211121183500/https://github.com/features/code-review"> Code review <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Issues","label":"ref_page:/features/code-review;ref_cta:Issues;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="a586578c53b61d679e2b9b6e7ab2601e055909aeda31e4d170b5b81de60d3792" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Issues","label":"ref_page:/features/code-review;ref_cta:Issues;"}" href="/web/20211121183500/https://github.com/features/issues"> Issues <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Integrations","label":"ref_page:/features/code-review;ref_cta:Integrations;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="0a9156e1ab33f7e1178e2413601efe2e50f7a12aed34acd2194f4dd5bfbfc594" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Integrations","label":"ref_page:/features/code-review;ref_cta:Integrations;"}" href="/web/20211121183500/https://github.com/features/integrations"> Integrations <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--primary text-bold border-top pt-4 pb-2 mt-3" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to GitHub Sponsors","label":"ref_page:/features/code-review;ref_cta:GitHub Sponsors;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="9e065f682e9ec419d6fc13e7dd5f38fca87ac0a4624d8f0e589ac3065c65c07a" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to GitHub Sponsors","label":"ref_page:/features/code-review;ref_cta:GitHub Sponsors;"}" href="/web/20211121183500/https://github.com/sponsors"> GitHub Sponsors <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--primary text-bold py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Customer stories","label":"ref_page:/features/code-review;ref_cta:Customer stories;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="3e161e12928032bc4c65398556b7d63fc6a701041ad825ec5e6e01ccca767331" data-analytics-event="{"category":"Header dropdown (logged out), Why GitHub?","action":"click to go to Customer stories","label":"ref_page:/features/code-review;ref_cta:Customer stories;"}" href="/web/20211121183500/https://github.com/customer-stories"> Customer stories <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> </ul> </div> </details> </li> <li class="mr-0 mr-lg-3 position-relative flex-wrap flex-justify-between flex-items-center border-bottom border-lg-bottom-0 d-block d-lg-flex flex-lg-nowrap flex-lg-items-center"> <a class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header menu top item (logged out)","action":"click to go to Team","label":"ref_page:/features/code-review;ref_cta:Team;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="66100dc2e4606082e90794231391533c09c561ad418cf3a51e561df2e5da16f9" data-analytics-event="{"category":"Header menu top item (logged out)","action":"click to go to Team","label":"ref_page:/features/code-review;ref_cta:Team;"}" href="/web/20211121183500/https://github.com/team">Team</a> </li> <li class="mr-0 mr-lg-3 position-relative flex-wrap flex-justify-between flex-items-center border-bottom border-lg-bottom-0 d-block d-lg-flex flex-lg-nowrap flex-lg-items-center"> <a class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header menu top item (logged out)","action":"click to go to Enterprise","label":"ref_page:/features/code-review;ref_cta:Enterprise;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="196ea1d7fc69bbf0bff48a6d54b1bef6cc836edf79afe4c9c09116bec3a727e8" data-analytics-event="{"category":"Header menu top item (logged out)","action":"click to go to Enterprise","label":"ref_page:/features/code-review;ref_cta:Enterprise;"}" href="/web/20211121183500/https://github.com/enterprise">Enterprise</a> </li> <li class="mr-0 mr-lg-3 position-relative flex-wrap flex-justify-between flex-items-center border-bottom border-lg-bottom-0 d-block d-lg-flex flex-lg-nowrap flex-lg-items-center"> <details class="HeaderMenu-details details-overlay details-reset width-full"> <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap d-block d-lg-inline-block"> Explore <svg x="0" y="0" viewbox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-absolute position-lg-relative"><path d="M1,1l6.2,6L13,1"></path></svg> </summary> <div class="dropdown-menu flex-auto rounded px-0 mt-0 pb-4 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4"> <ul class="list-style-none f5 pb-1"> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--primary text-bold py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Explore GitHub","label":"ref_page:/features/code-review;ref_cta:Explore GitHub;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="972b1374dfe690f7d51d8b14e9cac3e1c273c3f293e7f1ba521fe6755dbd3555" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Explore GitHub","label":"ref_page:/features/code-review;ref_cta:Explore GitHub;"}" href="/web/20211121183500/https://github.com/explore"> Explore GitHub <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li class="color-fg-muted text-normal f6 text-mono mb-1 border-top pt-3 mt-3 mb-1">Learn and contribute</li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Topics","label":"ref_page:/features/code-review;ref_cta:Topics;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="515eabe131342f4e617424a4dd1febf4cce7bca7497b59a23cbfe95d6a22f19c" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Topics","label":"ref_page:/features/code-review;ref_cta:Topics;"}" href="/web/20211121183500/https://github.com/topics"> Topics <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Collections","label":"ref_page:/features/code-review;ref_cta:Collections;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="e3f29541715c818b1ec20f52f31ba9719659cd9841b693d894ba01cf82934cac" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Collections","label":"ref_page:/features/code-review;ref_cta:Collections;"}" href="/web/20211121183500/https://github.com/collections"> Collections <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Trending","label":"ref_page:/features/code-review;ref_cta:Trending;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="7fe2a61d558fd6a6cefd10b3d28fc42a260b2542357404948a60e449700f6267" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Trending","label":"ref_page:/features/code-review;ref_cta:Trending;"}" href="/web/20211121183500/https://github.com/trending"> Trending <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Learning Lab","label":"ref_page:/features/code-review;ref_cta:Learning Lab;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="5d8739b65406eb0b11cb36fd837650a164bdba202418ac82de75b033094e7f72" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Learning Lab","label":"ref_page:/features/code-review;ref_cta:Learning Lab;"}" href="https://web.archive.org/web/20211121183500/https://lab.github.com/"> Learning Lab <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Open source guides","label":"ref_page:/features/code-review;ref_cta:Open source guides;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="1ba4d0d3ae999c93c89167c11b4fa5f00ba635f27018028cf7adf996f43bd6b4" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Open source guides","label":"ref_page:/features/code-review;ref_cta:Open source guides;"}" href="https://web.archive.org/web/20211121183500/https://opensource.guide/"> Open source guides <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li class="color-fg-muted text-normal f6 text-mono mb-1 border-top pt-3 mt-3 mb-1">Connect with others</li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to The ReadME Project","label":"ref_page:/features/code-review;ref_cta:The ReadME Project;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="1fcc736b5a0381ed0a5c41d25fd434197be8a072612a7b27a3497727a2ee1691" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to The ReadME Project","label":"ref_page:/features/code-review;ref_cta:The ReadME Project;"}" href="/web/20211121183500/https://github.com/readme"> The ReadME Project <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Events","label":"ref_page:/features/code-review;ref_cta:Events;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="bec18234a99b0f48c9ea32374686147560bd2cc638a0e5a79cf1b8725220de2e" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Events","label":"ref_page:/features/code-review;ref_cta:Events;"}" href="/web/20211121183500/https://github.com/events"> Events <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to Community forum","label":"ref_page:/features/code-review;ref_cta:Community forum;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="20754c57ec37f6dfc0f102c6c56cf17f78664edf0195fcf6e40a277a76de5f5b" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to Community forum","label":"ref_page:/features/code-review;ref_cta:Community forum;"}" href="https://web.archive.org/web/20211121183500/https://github.community/"> Community forum <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to GitHub Education","label":"ref_page:/features/code-review;ref_cta:GitHub Education;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="28007b62734d1832bb21eba9bd54b9d0b861243c4d90f3a682d89885773c9187" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to GitHub Education","label":"ref_page:/features/code-review;ref_cta:GitHub Education;"}" href="https://web.archive.org/web/20211121183500/https://education.github.com/"> GitHub Education <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Explore","action":"click to go to GitHub Stars program","label":"ref_page:/features/code-review;ref_cta:GitHub Stars program;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="d9342424589afc01cffb7fa6adc79cad6636a9b31551728ebfddf22eabb2386d" data-analytics-event="{"category":"Header dropdown (logged out), Explore","action":"click to go to GitHub Stars program","label":"ref_page:/features/code-review;ref_cta:GitHub Stars program;"}" href="https://web.archive.org/web/20211121183500/https://stars.github.com/"> GitHub Stars program <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> </ul> </div> </details> </li> <li class="mr-0 mr-lg-3 position-relative flex-wrap flex-justify-between flex-items-center border-bottom border-lg-bottom-0 d-block d-lg-flex flex-lg-nowrap flex-lg-items-center"> <a class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header menu top item (logged out)","action":"click to go to Marketplace","label":"ref_page:/features/code-review;ref_cta:Marketplace;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="db702222568a62e66eb8ce91afbee360b8cbec9e384dd63ef1b54904e6d10c65" data-analytics-event="{"category":"Header menu top item (logged out)","action":"click to go to Marketplace","label":"ref_page:/features/code-review;ref_cta:Marketplace;"}" href="/web/20211121183500/https://github.com/marketplace">Marketplace</a> </li> <li class="mr-0 mr-lg-3 position-relative flex-wrap flex-justify-between flex-items-center border-bottom border-lg-bottom-0 d-block d-lg-flex flex-lg-nowrap flex-lg-items-center"> <details class="HeaderMenu-details details-overlay details-reset width-full"> <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap d-block d-lg-inline-block"> Pricing <svg x="0" y="0" viewbox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-absolute position-lg-relative"><path d="M1,1l6.2,6L13,1"></path></svg> </summary> <div class="dropdown-menu flex-auto rounded px-0 mt-0 pb-4 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4"> <ul class="list-style-none f5 pb-1"> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--primary text-bold py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Pricing","action":"click to go to Plans","label":"ref_page:/features/code-review;ref_cta:Plans;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="10fd085f521e2b9ca935775ba02eaf097feba2ef0a07387e0f6c29cb400f915f" data-analytics-event="{"category":"Header dropdown (logged out), Pricing","action":"click to go to Plans","label":"ref_page:/features/code-review;ref_cta:Plans;"}" href="/web/20211121183500/https://github.com/pricing"> Plans <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Pricing","action":"click to go to Compare plans","label":"ref_page:/features/code-review;ref_cta:Compare plans;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="1a69634c6da304b7b9adf3294d0590ed22758622e702a6c49379e6a1e8b58cf6" data-analytics-event="{"category":"Header dropdown (logged out), Pricing","action":"click to go to Compare plans","label":"ref_page:/features/code-review;ref_cta:Compare plans;"}" href="/web/20211121183500/https://github.com/pricing#compare-features"> Compare plans <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--secondary py-2" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Pricing","action":"click to go to Contact Sales","label":"ref_page:/features/code-review;ref_cta:Contact Sales;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="f246aeb1ec6e5f855fb7781a035b220926ccd0f7a0a5e2f5e7afd7f89faea4b9" data-analytics-event="{"category":"Header dropdown (logged out), Pricing","action":"click to go to Contact Sales","label":"ref_page:/features/code-review;ref_cta:Contact Sales;"}" href="https://web.archive.org/web/20211121183500/https://github.com/enterprise/contact"> Contact Sales <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> <li> <a class="lh-condensed-ultra d-block no-underline Bump-link--hover position-relative Link--primary text-bold border-top pt-4 pb-2 mt-3" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Header dropdown (logged out), Pricing","action":"click to go to Education","label":"ref_page:/features/code-review;ref_cta:Education;","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="ac0c26eee79b760784431697564fbe0e957029f3db9768db802b655ff955696f" data-analytics-event="{"category":"Header dropdown (logged out), Pricing","action":"click to go to Education","label":"ref_page:/features/code-review;ref_cta:Education;"}" href="https://web.archive.org/web/20211121183500/https://education.github.com/"> Education <span class="Bump-link-symbol position-absolute right-0 text-normal color-fg-muted pr-3">→</span> </a> </li> </ul> </div> </details> </li> </ul> </nav> <div class="d-lg-flex flex-items-center px-3 px-lg-0 text-center text-lg-left"> <div class="d-lg-flex min-width-0 mb-3 mb-lg-0"> <div class="header-search flex-auto js-site-search position-relative flex-self-stretch flex-md-self-auto mb-3 mb-md-0 mr-0 mr-md-3 js-jump-to"> <div class="position-relative"> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="js-site-search-form" role="search" aria-label="Site" data-unscoped-search-url="/search" action="/web/20211121183500/https://github.com/search" accept-charset="UTF-8" method="get"> <label class="form-control input-sm header-search-wrapper p-0 js-chromeless-input-container header-search-wrapper-jump-to position-relative d-flex flex-justify-between flex-items-center"> <input type="text" class="form-control input-sm header-search-input jump-to-field js-jump-to-field js-site-search-focus " data-hotkey="s,/" name="q" data-test-selector="nav-search-input" placeholder="Search GitHub" data-unscoped-placeholder="Search GitHub" data-scoped-placeholder="Search" autocapitalize="off" role="combobox" aria-haspopup="listbox" aria-expanded="false" aria-autocomplete="list" aria-controls="jump-to-results" aria-label="Search GitHub" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" spellcheck="false" autocomplete="off"> <input type="hidden" data-csrf="true" class="js-data-jump-to-suggestions-path-csrf" value="1GDRSK3kZ4rW4qOFT/XHrqOd7UHqoYvZW/bcPGvu6TQXDE7QhjqrrXfe+aph215734qMtjSyzCRLBAXKcxPuZw=="/> <input type="hidden" class="js-site-search-type-field" name="type"> <svg xmlns="http://www.w3.org/2000/svg" width="22" height="20" aria-hidden="true" class="mr-1 header-search-key-slash"><path fill="none" stroke="#979A9C" opacity=".4" d="M3.5.5h12c1.7 0 3 1.3 3 3v13c0 1.7-1.3 3-3 3h-12c-1.7 0-3-1.3-3-3v-13c0-1.7 1.3-3 3-3z"></path><path fill="#979A9C" d="M11.8 6L8 15.1h-.9L10.8 6h1z"></path></svg> <div class="Box position-absolute overflow-hidden d-none jump-to-suggestions js-jump-to-suggestions-container"> <ul class="d-none js-jump-to-suggestions-template-container"> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-suggestion" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="suggestion"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211121183500im_/https://github.com/features/code-review" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> </ul> <ul class="d-none js-jump-to-no-results-template-container"> <li class="d-flex flex-justify-center flex-items-center f5 d-none js-jump-to-suggestion p-2"> <span class="color-fg-muted">No suggested jump to results</span> </li> </ul> <ul id="jump-to-results" role="listbox" class="p-0 m-0 js-navigation-container jump-to-suggestions-results-container js-jump-to-suggestions-results-container"> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-scoped-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="scoped_search"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211121183500im_/https://github.com/features/code-review" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-owner-scoped-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="owner_scoped_search"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211121183500im_/https://github.com/features/code-review" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-global-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="global_search"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211121183500im_/https://github.com/features/code-review" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> </ul> </div> </label> </form> </div> </div> </div> <div class="position-relative mr-3 mb-4 mb-lg-0 d-inline-block"> <a href="/web/20211121183500/https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Ffeatures%2Fcode-review" class="HeaderMenu-link flex-shrink-0 no-underline" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header menu","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="6ad57edae8f5d78cac239a8c2f37cd0a7f6f4f5410e5c466a99c2b07568fc2bb" data-ga-click="(Logged out) Header, clicked Sign in, text:sign-in"> Sign in </a> </div> <a href="/web/20211121183500/https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2Ffeatures%2Fcode-review&source=header" class="HeaderMenu-link flex-shrink-0 d-inline-block no-underline border color-border-default rounded px-2 py-1" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header menu","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="6ad57edae8f5d78cac239a8c2f37cd0a7f6f4f5410e5c466a99c2b07568fc2bb" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Sign up","action":"click to sign up for account","label":"ref_page:/features/code-review;ref_cta:Sign up;ref_loc:header logged out","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="cba2ff980f40a5d2b0b8a65fc2799984550a5cfb04978814f250a081afdecadf" data-analytics-event="{"category":"Sign up","action":"click to sign up for account","label":"ref_page:/features/code-review;ref_cta:Sign up;ref_loc:header logged out"}"> Sign up </a> </div> </div> </div> </header> </div> <div id="start-of-content" class="show-on-focus"></div> <div data-pjax-replace id="js-flash-container"> <template class="js-flash-template"> <div class="flash flash-full {{ className }}"> <div class=" px-2"> <button class="flash-close js-flash-close" type="button" aria-label="Dismiss this message"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x"> <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path> </svg> </button> <div>{{ message }}</div> </div> </div> </template> </div> <include-fragment class="js-notification-shelf-include-fragment" data-base-src="https://github.com/notifications/beta/shelf"></include-fragment> <div class="application-main " data-commit-hovercards-enabled data-discussion-hovercards-enabled data-issue-and-pr-hovercards-enabled> <main class="font-mktg"> <div class="position-relative z-1"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/heroes/features-hero-code-review.svg" class="width-full position-absolute top-0 left-0 events-none z-n1" alt=""> <div class="py-6 py-sm-8 py-lg-10 py-xl-12"> <div class="container-lg p-responsive text-center position-relative" style="z-index: 5;"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 72 59.75" class="d-block mx-auto mb-5" width="100"><path d="m40.1 13.75h-9a1 1 0 0 1 0-2h9a1 1 0 0 1 0 2zm9.2 6h-18.2a1 1 0 0 1 0-2h18.2a1 1 0 1 1 0 2zm10-6h-13.2a1 1 0 0 1 0-2h13.2a1 1 0 1 1 0 2zm0 6h-4a1 1 0 0 1 0-2h4a1 1 0 1 1 0 2z" fill="#2088ff"></path><path d="m68.6 31.6h-38.7a1 1 0 0 1 0-2h38.7a1.44 1.44 0 0 0 1.4-1.4v-24.8a1.44 1.44 0 0 0 -1.4-1.4h-65.2a1.44 1.44 0 0 0 -1.4 1.4v24.8a1.44 1.44 0 0 0 1.4 1.4h6.5a1 1 0 1 1 0 2h-6.5a3.44 3.44 0 0 1 -3.4-3.4v-24.8a3.44 3.44 0 0 1 3.4-3.4h65.2a3.45 3.45 0 0 1 3.4 3.4v24.8a3.45 3.45 0 0 1 -3.4 3.4z" fill="#79b8ff"></path><g fill="#2088ff"><path d="m20.5 16.75h-9.3a1 1 0 0 1 0-2h9.3a1 1 0 0 1 0 2z"></path><path d="m15.8 21.4a1 1 0 0 1 -1-1v-9.2a1 1 0 1 1 2 0v9.2a1 1 0 0 1 -1 1zm33.9 38.35h-27.4a7.41 7.41 0 0 1 -7.4-7.4v-22.75a4.06 4.06 0 0 1 2.66-3.85 4.12 4.12 0 0 1 4.59 1.19 15.46 15.46 0 0 1 2.25 4.38c1.37 3.53 2.6 6.58 10.26 6.58h15.14a7.41 7.41 0 0 1 7.4 7.4v7.1a7.51 7.51 0 0 1 -7.5 7.35zm-30.7-32.25a2.24 2.24 0 0 0 -.78.14 2.05 2.05 0 0 0 -1.36 2v22.8a5.47 5.47 0 0 0 5.4 5.31h27.44a5.52 5.52 0 0 0 5.5-5.43v-7a5.47 5.47 0 0 0 -5.4-5.4h-15.1c-9.07-.02-10.7-4.19-12.13-7.92a13.78 13.78 0 0 0 -2-3.81 2.06 2.06 0 0 0 -1.57-.69z"></path><circle cx="27.8" cy="48.4" r="1.7"></circle><circle cx="36.1" cy="48.4" r="1.7"></circle><circle cx="44.3" cy="48.4" r="1.7"></circle></g></svg> <h1 class="h1-mktg mb-4">Write better code</h1> <p class="f3-mktg color-fg-muted mb-5 col-md-9 mx-auto">On GitHub, lightweight code review tools are built into every pull request. Your team can create review processes that improve the quality of your code and fit neatly into your workflow.</p> <div class="jumbotron-video js-video-container togglevideo pb-6"> <p class="togglevideo-hidewhenexpanded text-center"> <button class="btn-link jumbotron-link-followup js-video-play h5-mktg d-inline-block text-blue-mktg" type="button" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Video","action":"play","label":"What is GitHub Video;ref_page:Code Review","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="0e8d27106b75284a9fdb9b8032f0f76a8d981a00bcf52fc8c09ae0656c3595e4" data-analytics-event="{"category":"Video","action":"play","label":"What is GitHub Video;ref_page:Code Review"}"> <svg xmlns="http://www.w3.org/2000/svg" class="jumbotron-followup-icon ml-1 jumbotron-link-followup-icon ml-1" viewbox="0 0 40 40"><path d="M20 40c11 0 20-9 20-20S31 0 20 0 0 9 0 20s9 20 20 20zm0-2c-9.9 0-18-8.1-18-18S10.1 2 20 2s18 8.1 18 18-8.1 18-18 18zm9.3-18L15 28.8V11.1L29.3 20z" fill="currentColor" fill-rule="evenodd"></path></svg> See what’s possible </button> </p> <div class="togglevideo-hidewhencollapsed togglevideo-showwhenexpanded video-responsive"> <iframe class="js-video-iframe" title="Video titled 'What is GitHub?'" data-src="https://www.youtube.com/embed/w3jLJU7DT5E?autoplay=1&rel=0" frameborder="0" allowfullscreen> </iframe> </div> <span class="jumbotron-video-close togglevideo-hidewhencollapsed togglevideo-showwhenexpanded"> <button class="btn-link color-text-white js-video-close" type="button" aria-label="Close video" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Video","action":"close","label":"What is GitHub Video;ref_page:Code Review","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="c06c91259eefa8fd95770bc299531556bc4cdaae7c37449c3a60178787e27612" data-analytics-event="{"category":"Video","action":"close","label":"What is GitHub Video;ref_page:Code Review"}"> <svg height="30" aria-hidden="true" viewbox="0 0 24 24" version="1.1" width="30" data-view-component="true" class="octicon octicon-x color-fg-muted"> <path fill-rule="evenodd" d="M5.72 5.72a.75.75 0 011.06 0L12 10.94l5.22-5.22a.75.75 0 111.06 1.06L13.06 12l5.22 5.22a.75.75 0 11-1.06 1.06L12 13.06l-5.22 5.22a.75.75 0 01-1.06-1.06L10.94 12 5.72 6.78a.75.75 0 010-1.06z"></path> </svg> </button> </span> </div> </div> </div> </div> <div class="py-7 py-md-8 py-lg-9 position-relative z-1"> <div class="container-lg p-responsive text-center py-6"> <h2 class="h3-mktg mb-3">Start with a pull request</h2> <p class="f3-mktg color-fg-muted col-md-8 mx-auto"> Pull requests are fundamental to how teams review and improve code on GitHub. Evolve projects, propose new features, and discuss implementation details before changing your source code. </p> </div> <div class="container-lg p-responsive text-center"> <h3 class="h3-mktg mt-6 pt-md-4 mb-3">Make a change</h3> <p class="f3-mktg color-fg-muted col-md-8 mx-auto"> Start a new feature or propose a change to existing code with a pull request—a base for your team to coordinate details and refine your changes. </p> <p class="mb-6 pb-md-4 col-md-8 mx-auto"> <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/articles/about-pull-requests/" class="Bump-link no-underline">Learn pull request <span class="no-wrap">fundamentals <span class="Bump-link-symbol">→</span></span></a> </p> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/pull-request.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/pull-request.png" width="980" height="341" class="d-block width-fit height-auto" alt=""> </picture> </div> </div> <div class="container-xl p-responsive"> <div class="py-7 py-md-8 py-lg-9 text-center"> <h3 class="h3-mktg mt-6 pt-md-4 mb-4">See every update</h3> <div class="clearfix gutter-md-spacious"> <div class="col-md-4 float-left"> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/diff.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/diff.png" width="460" height="193" class="width-fit height-auto my-4 my-md-6" alt=""> </picture> <h3 class="h6-mktg mb-3">Diffs</h3> <p class="color-fg-muted"> Preview changes in context with your code to see what is being proposed. Side-by-side Diffs highlight added, edited, and deleted code right next to the original file, so you can easily spot changes. </p> <p> <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/articles/about-comparing-branches-in-pull-requests/" class="Bump-link">Learn how to compare branches with diffs <span class="Bump-link-symbol">→</span></a> </p> </div> <div class="col-md-4 float-left"> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/history.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/history.png" width="460" class="width-fit my-4 my-md-6" alt=""> </picture> <h3 class="h6-mktg mb-3">History</h3> <p class="color-fg-muted"> Browse commits, comments, and references related to your pull request in a timeline-style interface. Your pull request will also highlight what’s changed since you last checked. </p> <hr class="mx-auto my-4" width="80"> <p class="f6 color-fg-muted"> <span class="color-fg-success text-bold">Pro-tip:</span> You can <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/articles/searching-commits/" class="link-mktg">search your commit history</a> by keyword, committer, organization, and more. </p> </div> <div class="col-md-4 float-left"> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/blame.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/blame.png" width="460" class="width-fit my-4 my-md-6" alt=""> </picture> <h3 class="h6-mktg mb-3">Blame</h3> <p class="color-fg-muted"> See what a file looked like before a particular change. With <a href="https://web.archive.org/web/20211121183500/https://github.blog/2017-01-18-navigate-file-history-faster-with-improved-blame-view/" class="link-mktg">blame view</a>, you can see how any portion of your file has evolved over time without viewing the file’s full history. </p> <hr class="mx-auto my-4" width="80"> <p class="f6"> <span class="color-fg-success text-bold">Pro-tip:</span> Use <code><a href="https://web.archive.org/web/20211121183500/https://docs.github.com/articles/tracing-changes-in-a-file/" class="link-mktg">git blame</a></code> to trace the changes in a file. </p> </div> </div> </div> </div> <div class="container-lg p-responsive"> <div class="py-7 py-md-8 py-lg-9 text-center text-md-left"> <h3 class="h3-mktg text-center mb-5 mb-md-8">Discuss code</h3> <div class="d-flex flex-column flex-md-row flex-md-justify-center gutter-md-spacious mb-9"> <div class="col-md-5 flex-md-self-center text-center"> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/comment-simple.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/comment-simple.png" width="460" class="d-block width-fit mx-auto mb-3" alt="" loading="lazy"> </picture> </div> <div class="col-md-7 col-lg-6 pr-md-5 flex-md-self-center"> <h4 class="h6-mktg mb-3">Comments</h4> <p class="color-fg-muted"> On GitHub, conversations happen alongside your code. Leave detailed comments on code syntax and ask questions about structure inline. </p> </div> </div> <div class="d-flex flex-column flex-md-row-reverse flex-md-justify-center gutter-md-spacious mb-9"> <div class="col-md-5 flex-md-self-center text-center"> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/review-request-2.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/review-request-2.png" width="460" class="d-block width-fit mx-auto mb-3" alt="" loading="lazy"> </picture> </div> <div class="col-md-7 col-lg-6 pr-md-5 flex-md-self-center"> <h4 class="h6-mktg mb-3">Review requests</h4> <p class="color-fg-muted"> If you’re on the other side of the code, requesting peer reviews is easy. Add users to your pull request, and they’ll receive a notification letting them know you need their feedback. </p> </div> </div> <div class="d-flex flex-column flex-md-row flex-md-justify-center gutter-md-spacious"> <div class="col-md-5 flex-md-self-center text-center"> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/reviews.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/reviews.png" width="460" class="d-block width-fit mx-auto mb-3" alt="" loading="lazy"> </picture> </div> <div class="col-md-7 col-lg-6 pr-md-5 flex-md-self-center"> <h4 class="h6-mktg mb-3">Reviews</h4> <p class="color-fg-muted"> Save your teammates a few notifications. Bundle your comments into one cohesive review, then specify whether comments are required changes or just suggestions. </p> </div> </div> </div> </div> <div class="py-7 py-md-8 py-lg-9 text-center"> <div class="container-lg p-responsive"> <h3 class="h3-mktg mb-4">Resolve simple conflicts</h3> <p class="f3-mktg mb-6 col-md-8 mx-auto color-fg-muted"> You can’t always avoid conflict. Merge pull requests faster by resolving simple merge conflicts on GitHub—no command line necessary. </p> <div class="mb-6 col-md-10 mx-auto"> <picture> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/conflict.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/code-review/conflict.png" width="970" class="d-block width-fit" alt="" loading="lazy"> </picture> </div> <p class="color-fg-muted mb-6 pb-md-4 col-md-8 mx-auto"> Learn how to resolve merge conflicts <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/articles/resolving-a-merge-conflict-on-github/" class="link-mktg">on GitHub</a> and <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/articles/resolving-a-merge-conflict-using-the-command-line/" class="link-mktg">using the command line</a>. </p> </div> </div> <div class="py-7 py-md-8 py-lg-9 text-center color-bg-subtle"> <div class="container-lg p-responsive"> <h2 class="h3-mktg mb-5 mt-3">Merge the highest quality code</h2> <p class="f3-mktg text-normal color-fg-muted mb-2 pb-md-4 col-md-8 mx-auto"> Reviews can improve your code, but mistakes happen. Limit human error and ensure only high quality code gets merged with detailed permissions and status checks. </p> </div> <div class="container-xl p-responsive"> <div class="d-md-flex flex-wrap gutter-md-spacious"> <div class="col-md-4"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 68.1 59.4" class="d-inline-block mx-auto my-5" width="70"><path d="m41.4 26.5a1 1 0 0 1 -1-.89 6.47 6.47 0 0 0 -6.51-5.71 6.56 6.56 0 0 0 -6.51 5.63 1.01 1.01 0 1 1 -2-.27 8.57 8.57 0 0 1 8.49-7.37 8.46 8.46 0 0 1 8.49 7.49 1 1 0 0 1 -.89 1.1h-.07z" fill="#2088ff"></path><path d="m33.9 19.9a6.4 6.4 0 1 1 6.4-6.4 6.4 6.4 0 0 1 -6.4 6.4zm0-10.8a4.4 4.4 0 1 0 4.4 4.4 4.4 4.4 0 0 0 -4.4-4.4z" fill="#2088ff"></path><path d="m33.9 34.2a17.1 17.1 0 1 1 17.1-17.1 17.12 17.12 0 0 1 -17.1 17.1zm0-32.2a15.1 15.1 0 1 0 15.1 15.1 15.12 15.12 0 0 0 -15.1-15.1z" fill="#2088ff"></path><g fill="#79b8ff"><path d="m11.1 59.2a11.1 11.1 0 1 1 11.1-11.1 11.11 11.11 0 0 1 -11.1 11.1zm0-20.2a9.1 9.1 0 1 0 9.1 9.1 9.1 9.1 0 0 0 -9.1-9.1z"></path><path d="m18 40.6a1 1 0 0 1 -.78-1.6l3.5-4.4a1 1 0 0 1 1.57 1.24l-3.54 4.4a1 1 0 0 1 -.75.36zm-2.8 13.2a1 1 0 0 1 -1-.85 3.2 3.2 0 0 0 -3.11-2.75 3.11 3.11 0 0 0 -3.09 2.65 1.011 1.011 0 0 1 -2-.3 5.1 5.1 0 0 1 5.09-4.35 5.21 5.21 0 0 1 5.12 4.5 1 1 0 0 1 -.84 1.14h-.17z"></path><path d="m11.1 50.2a3.9 3.9 0 1 1 3.9-3.9 3.9 3.9 0 0 1 -3.9 3.9zm0-5.8a1.9 1.9 0 1 0 1.9 1.9 1.9 1.9 0 0 0 -1.9-1.9zm45.8 15a11.2 11.2 0 1 1 11.2-11.2 11.21 11.21 0 0 1 -11.2 11.2zm0-20.4a9.2 9.2 0 1 0 9.2 9.2 9.21 9.21 0 0 0 -9.2-9.2z"></path><path d="m49.9 40.6a1 1 0 0 1 -.78-.38l-3.5-4.4a1 1 0 0 1 1.57-1.24l3.5 4.4a1 1 0 0 1 -.79 1.62zm11.1 13.3a1 1 0 0 1 -1-.85 3.2 3.2 0 0 0 -3.11-2.75 3.13 3.13 0 0 0 -3.14 2.7 1.005 1.005 0 0 1 -2-.2 5.11 5.11 0 0 1 5.09-4.5 5.21 5.21 0 0 1 5.09 4.45 1 1 0 0 1 -.84 1.14h-.09z"></path><path d="m56.9 50.3a3.9 3.9 0 1 1 3.9-3.9 3.9 3.9 0 0 1 -3.9 3.9zm0-5.8a1.9 1.9 0 1 0 1.9 1.9 1.9 1.9 0 0 0 -1.9-1.9z"></path></g></svg> <h3 class="h6-mktg mb-3">Permissions</h3> <p class="f4-mktg color-fg-muted"> Give collaborators as much access as they need through your repository settings. You can extend access to a few teams and select which ones can read or write to your files. The options you have for permissions depend on your plan. </p> <p class="f4-mktg"> <a href="/web/20211121183500/https://github.com/pricing" class="Bump-link no-underline" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Code review","action":"click","label":"text:See plan options","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="5d4f7bf74b2f51004b9f71ff4d24657efae200906921845281ec3f25f892f89d" data-analytics-event="{"category":"Code review","action":"click","label":"text:See plan options"}"> See plan options <span class="Bump-link-symbol">→</span> </a> </p> </div> <div class="col-md-4"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 66.18 58.22" class="d-inline-block mx-auto my-5" width="70"><path d="m33.09 40.92a1 1 0 0 1 -1-1v-22a1 1 0 1 1 2 0v22a1 1 0 0 1 -1 1z" fill="#79b8ff"></path><path d="m33.09 18.93a4.64 4.64 0 1 1 4.59-4.69 4.64 4.64 0 0 1 -4.59 4.69zm0-7.28a2.64 2.64 0 1 0 2.59 2.69 2.64 2.64 0 0 0 -2.59-2.69zm0 36.71a4.64 4.64 0 1 1 4.59-4.69 4.64 4.64 0 0 1 -4.59 4.69zm0-7.28a2.64 2.64 0 1 0 2.59 2.69 2.64 2.64 0 0 0 -2.59-2.62zm0-3.26h-.09a1 1 0 0 1 -.87-1.11 8 8 0 0 1 5-6.12 12.25 12.25 0 0 1 4.66-.84c2.34 0 4.09-.6 5.2-1.77a5.46 5.46 0 0 0 1.36-3.7 1.002 1.002 0 0 1 2-.13 7.43 7.43 0 0 1 -1.88 5.18c-1.5 1.61-3.75 2.42-6.68 2.42a10.29 10.29 0 0 0 -3.91.69 6.05 6.05 0 0 0 -3.88 4.55 1 1 0 0 1 -.91.83z" fill="#79b8ff"></path><g fill="#2088ff"><path d="m18.75 42.18h-16.37a2.47 2.47 0 0 1 -2.38-2.38v-12.38a2.3 2.3 0 0 1 2.23-2.37h16.52a2.3 2.3 0 0 1 2.38 2.22v12.53a2.3 2.3 0 0 1 -2.22 2.38zm-16.37-15.13a.32.32 0 0 0 -.38.38v12.37a.52.52 0 0 0 .38.38h16.37a.32.32 0 0 0 .38-.38v-12.38a.32.32 0 0 0 -.26-.37z"></path><path d="m17.13 26.18h-2v-4.08a4.64 4.64 0 0 0 -9.28 0v4.13h-2v-4.13a6.64 6.64 0 0 1 13.28 0z"></path><circle cx="10.63" cy="32.65" r="2.2"></circle><path d="m10.68 37.36a1 1 0 0 1 -1-1v-2.75a1 1 0 0 1 2 0v2.75a1 1 0 0 1 -1 1z"></path></g><path d="m49.36 25.2a4.64 4.64 0 1 1 4.64-4.64 4.64 4.64 0 0 1 -4.64 4.64zm0-7.28a2.64 2.64 0 1 0 2.64 2.64 2.64 2.64 0 0 0 -2.64-2.63z" fill="#79b8ff"></path><path d="m37.07 58.22a28.88 28.88 0 0 1 -20.85-8.81 1.018 1.018 0 1 1 1.46-1.42 27.09 27.09 0 1 0 0-37.82 1.012 1.012 0 0 1 -1.47-1.39 29.11 29.11 0 1 1 20.86 49.44z" fill="#2088ff"></path></svg> <h3 class="h6-mktg mb-3">Protected branches</h3> <p class="f4-mktg color-fg-muted"> <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/articles/about-protected-branches/" class="link-mktg">Protected Branches</a> help you maintain the integrity of your code. Limit who can push to a branch, and disable force pushes to specific branches. Then scale your policies with the <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/v3/repos/branches/" class="link-mktg">Protected Branches API</a>. </p> </div> <div class="col-md-4"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 66.3 58.4" class="d-inline-block mx-auto my-5" width="70"><path d="m39.8 48.3h-12.8a1 1 0 0 1 0-2h12.8a1 1 0 0 1 0 2z" fill="#79b8ff"></path><path d="m21.3 10.1h23.7v2h-23.7z" fill="#2088ff"></path><circle cx="6.6" cy="47.5" fill="#79b8ff" r="1.3"></circle><circle cx="11.1" cy="47.5" fill="#79b8ff" r="1.3"></circle><circle cx="15.9" cy="47.5" fill="#79b8ff" r="1.3"></circle><g fill="#2088ff"><path d="m11.1 58.4a11.1 11.1 0 1 1 11.1-11.1 11.1 11.1 0 0 1 -11.1 11.1zm0-20.2a9.1 9.1 0 1 0 9.1 9.1 9.11 9.11 0 0 0 -9.1-9.1z"></path><path d="m18.628 40.493 28.51-23.027 1.26 1.56-28.51 23.027z"></path><path d="m55.2 22.2a11.1 11.1 0 1 1 11.1-11.1 11.1 11.1 0 0 1 -11.1 11.1zm0-20.2a9.1 9.1 0 1 0 9.1 9.1 9.1 9.1 0 0 0 -9.1-9.1zm-44.1 20.2a11.1 11.1 0 1 1 11.1-11.1 11.11 11.11 0 0 1 -11.1 11.1zm0-20.2a9.1 9.1 0 1 0 9.1 9.1 9.11 9.11 0 0 0 -9.1-9.1z"></path><path d="m9.7 15a1 1 0 0 1 -.7-.29l-2.71-2.71a1 1 0 0 1 1.41-1.4l2 2 5.09-5.09a1 1 0 0 1 1.41 1.41l-5.8 5.8a1 1 0 0 1 -.7.28zm43.9 0a1 1 0 0 1 -.7-.29l-2.7-2.71a1 1 0 0 1 1.41-1.41l2 2 5.19-5.09a1 1 0 0 1 1.4 1.43l-5.9 5.8a1 1 0 0 1 -.7.27z"></path></g><path d="m55.2 58.4a11.1 11.1 0 1 1 11.1-11.1 11.1 11.1 0 0 1 -11.1 11.1zm0-20.2a9.1 9.1 0 1 0 9.1 9.1 9.1 9.1 0 0 0 -9.1-9.1z" fill="#79b8ff"></path></svg> <h3 class="h6-mktg mb-3">Required status checks</h3> <p class="f4-mktg color-fg-muted"> Create required status checks to add an extra layer of error prevention on branches. Use the <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/v3/repos/statuses/" class="link-mktg">Status API</a> to enforce checks and disable the merge button until they pass. To err is human; to automate, divine! </p> </div> </div> </div> </div> <div class="py-7 py-md-8 py-lg-9"> <div class="container-lg p-responsive"> <h2 class="h3-mktg text-center mb-5 mt-3">Bulletproof your review process</h2> <p class="f3-mktg text-normal color-fg-muted text-center mb-2 pb-md-4 col-md-8 mx-auto"> Build on GitHub with review tools to avoid human error and add extra polish to your team’s code with review tools. </p> <div class="d-flex flex-wrap gutter-md-spacious mt-md-6"> <div class="col-md-6 mb-4 d-flex flex-items-center"> <a href="/web/20211121183500/https://github.com/marketplace/codecov"> <picture class="d-flex flex-justify-center"> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/codecov.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/codecov.png" width="96" height="96" alt="Codecov" class="p-3 circle color-shadow-medium" loading="lazy" style="background-color: #fc2b6a;"> </picture> </a> <div class="pl-4"> <h3 class="h6-mktg mb-1"> <a href="/web/20211121183500/https://github.com/marketplace/codecov">Codecov</a> </h3> <p>Group, merge, archive and compare coverage reports</p> </div> </div> <div class="col-md-6 mb-4 d-flex flex-items-center"> <a href="/web/20211121183500/https://github.com/marketplace/codacy"> <picture class="d-flex flex-justify-center"> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/codacy-dark.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/codacy-dark.png" alt="Codacy" class="p-3 circle color-shadow-medium" width="96" height="96" loading="lazy" style="background-color: #242C33;"> </picture> </a> <div class="pl-4"> <h3 class="h6-mktg mb-1"> <a href="/web/20211121183500/https://github.com/marketplace/codacy">Codacy</a> </h3> <p>Automated code reviews to help developers ship better software, faster</p> </div> </div> </div> <div class="d-flex flex-wrap gutter-md-spacious mt-md-6"> <div class="col-md-6 mb-4 d-flex flex-items-center"> <a href="/web/20211121183500/https://github.com/marketplace/coveralls"> <picture class="d-flex flex-justify-center"> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/coveralls.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/coveralls.png" alt="Coveralls" class="p-3 circle color-shadow-medium" width="96" height="96" loading="lazy" style="background-color: #FFFFFF;"> </picture> </a> <div class="pl-4"> <h3 class="h6-mktg mb-1"> <a href="/web/20211121183500/https://github.com/marketplace/coveralls">Coveralls</a> </h3> <p>Ensure that new code is fully covered, and see coverage trends emerge</p> </div> </div> <div class="col-md-6 mb-4 d-flex flex-items-center"> <a href="/web/20211121183500/https://github.com/marketplace/codefactor"> <picture class="d-flex flex-justify-center"> <source srcset="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/codefactor.webp" type="image/webp"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/integrators/codefactor.png" alt="Gitcolony" class="p-3 circle color-shadow-medium" width="96" height="96" loading="lazy" style="background-color: #353e4f;"> </picture> </a> <div class="pl-4"> <h3 class="h6-mktg mb-1"> <a href="/web/20211121183500/https://github.com/marketplace/codefactor">CodeFactor</a> </h3> <p>Automated Code Review for GitHub</p> </div> </div> </div> </div> </div> <div class="text-center border-y py-4"> <a href="/web/20211121183500/https://github.com/features"><span class="Bump-link-symbol">←</span> Back to all features</a> </div> <div class="mt-4 color-bg-subtle fade-img-to-white-bg" style="background-image: url('https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/patterns/contribution-graph.png');"> <h2 class="h3-mktg text-center mb-4">Get started</h2> <div class="container-xl py-4"> <div class="d-lg-flex flex-items-stretch gutter-lg-spacious text-center"> <!--// GitHub Free //--> <div class="col-lg-4 mb-3 mb-lg-0"> <div class="height-full position-relative rounded-3 px-2 pt-5 pb-2 js-pricing-plan" data-min-seats="1" data-max-seats="4"> <p hidden class="position-absolute left-0 right-0 h5 text-center text-uppercase color-text-white js-recommended-plan-caption" style="top:6px;">Most popular</p> <div class="d-md-flex flex-column flex-justify-between height-full rounded-3 color-shadow-extra-large color-bg-default"> <div class="px-3 pt-4 pb-3"> <h2 class="mb-2 h5-mktg">Free</h2> <p class="color-fg-muted lh-condensed mb-2">The basics for individuals <br>and organizations</p> <div class="js-get-in-touch mb-4" hidden data-plan="free"> <h2>Get in touch</h2> <span>Please <a href="#{enterprise_contact_requests_url}?ref_page=/enterprise&ref_cta=CustomPriceCalculator&ref_loc=hero">contact us</a> for more information</span> </div> <div class="js-custom-price tooltipped-n tooltipped-multiline tooltipped-no-delay " data-currency="USD" aria-label="Prices in local currency will change as the exchange rate fluctuates and are provided as a convenience. The actual charge will be USD $0 per user/month." role="tooltip" data-plan="free"> <h3 class="mb-0"> <span class="d-flex flex-justify-center flex-items-center"> <span class="d-flex flex-items-center f0-mktg text-normal text-mono mr-2"> <sup class="f3 color-fg-muted v-align-middle mr-1">$</sup> <span class="js-computed-value" data-plan="free" id="free">0</span> </span> <span class="text-normal text-mono f4 color-fg-muted js-pricing-cost-suffix"> per month </span> </span> </h3> <p class="js-yearly-cost color-fg-muted mb-3" hidden> </p> </div> <div class="mt-2"> <a class="btn-mktg d-block btn-muted-mktg" data-optimizely-event="click.signup" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Sign up","action":"click to sign up for account","label":"ref_page:/features/code-review;ref_cta:Join for free;ref_loc:cards","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="f9dd6d24dac28aac0e9a2e74749d9f0b007e8ef75712909d60defc496d131b44" data-analytics-event="{"category":"Sign up","action":"click to sign up for account","label":"ref_page:/features/code-review;ref_cta:Join for free;ref_loc:cards"}" href="/web/20211121183500/https://github.com/join?plan=free&ref_cta=Join%2520for%2520free&ref_loc=cards&ref_page=%2Ffeatures%2Fcode-review&source=pricing-card-free"> Join for free </a> </div> </div> </div> </div> </div> <!--// GitHub Pro //--> <!--// GitHub Team //--> <div class="col-lg-4 mb-3 mb-lg-0"> <div class="height-full position-relative rounded-3 px-2 pt-5 pb-2 js-pricing-plan" data-min-seats="5" data-max-seats="10"> <p class="position-absolute left-0 right-0 h5 text-center text-uppercase color-text-white js-recommended-plan-caption" hidden style="top:6px;">Most popular</p> <div class="d-md-flex flex-column flex-justify-between height-full rounded-3 color-shadow-extra-large color-bg-default"> <div class="px-3 pt-4 pb-3"> <h2 class="mb-2 h5-mktg">Team</h2> <p class="color-fg-muted lh-condensed">Advanced collaboration for <br>individuals and organizations</p> <div class="js-get-in-touch mb-4" hidden data-plan="business"> <h2>Get in touch</h2> <span>Please <a href="#{enterprise_contact_requests_url}?ref_page=/enterprise&ref_cta=CustomPriceCalculator&ref_loc=hero">contact us</a> for more information</span> </div> <div class="js-custom-price tooltipped-n tooltipped-multiline tooltipped-no-delay " data-currency="USD" aria-label="Prices in local currency will change as the exchange rate fluctuates and are provided as a convenience. The actual charge will be USD $4 per user/month." role="tooltip" data-plan="business"> <h3 class="mb-0"> <span class="d-flex flex-justify-center flex-items-center"> <span class="d-flex flex-items-center f0-mktg text-normal text-mono mr-2"> <sup class="f3 color-fg-muted v-align-middle mr-1">$</sup> <span class="js-computed-value" data-plan="business" id="business">4</span> </span> <span class="text-normal text-mono f4 color-fg-muted js-pricing-cost-suffix"> per user/month </span> </span> </h3> <p class="js-yearly-cost color-fg-muted mb-3" hidden> Billed yearly at <span class="f5-mktg text-mono color-fg-default">$48</span> per user/year </p> </div> <div class="mt-2"> <a class="btn-mktg d-block js-pricing-upgrade-path" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Sign up","action":"click to sign up for account","label":"ref_page:/features/code-review;ref_cta:Continue with Team;ref_loc:cards","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="33c5ef5ebfce2e75aebdb66dc992df7003d219d1bdd8ae08ca288a27b8bc505b" data-optimizely-event="click.continue_with_team" data-ga-deferred="[["ec:addImpression",{"name":"Team","category":"Plan","position":2}]]" data-analytics-event="{"category":"Sign up","action":"click to sign up for account","label":"ref_page:/features/code-review;ref_cta:Continue with Team;ref_loc:cards"}" href="/web/20211121183500/https://github.com/join?plan=business&pricing_exp=true&ref_cta=Continue%2520with%2520Team&ref_loc=cards&ref_page=%2Ffeatures%2Fcode-review&setup_organization=true&source=pricing-card-team"> Continue with Team </a> </div> </div> </div> </div> </div> <!--// GitHub Enterprise //--> <div class="col-lg-4 mb-3 mb-lg-0"> <div class="height-full position-relative rounded-3 px-2 pt-5 pb-2 js-pricing-plan" data-min-seats="11" data-max-seats="Infinity"> <p class="position-absolute left-0 right-0 h5 text-center text-uppercase color-text-white js-recommended-plan-caption" hidden style="top:6px;">Most popular</p> <div class="d-md-flex flex-column flex-justify-between height-full rounded-3 color-shadow-extra-large color-bg-default"> <div class="px-3 pt-4 pb-3"> <h2 class="mb-2 h5-mktg">Enterprise</h2> <p class="color-fg-muted lh-condensed">Security, compliance, <br>and flexible deployment</p> <div class="js-get-in-touch mb-4" hidden data-plan="business_plus"> <h2>Get in touch</h2> <span>Please <a href="#{enterprise_contact_requests_url}?ref_page=/enterprise&ref_cta=CustomPriceCalculator&ref_loc=hero">contact us</a> for more information</span> </div> <div class="js-custom-price tooltipped-n tooltipped-multiline tooltipped-no-delay " data-currency="USD" aria-label="Prices in local currency will change as the exchange rate fluctuates and are provided as a convenience. The actual charge will be USD $21 per user/month." role="tooltip" data-plan="business_plus"> <h3 class="mb-0"> <span class="d-flex flex-justify-center flex-items-center"> <span class="d-flex flex-items-center f0-mktg text-normal text-mono mr-2"> <sup class="f3 color-fg-muted v-align-middle mr-1">$</sup> <span class="js-computed-value" data-plan="business_plus" id="business_plus">21</span> </span> <span class="text-normal text-mono f4 color-fg-muted js-pricing-cost-suffix"> per user/month </span> </span> </h3> <p class="js-yearly-cost color-fg-muted mb-3" hidden> Billed yearly at <span class="f5-mktg text-mono color-fg-default">$252</span> per user/year </p> </div> <div class="mt-2"> <div> <div class="d-flex flex-wrap flex-column-reverse flex-xl-row gutter-md-condensed"> <div class="col-12 col-xl-6"> <a href="https://web.archive.org/web/20211121183500/https://github.com/enterprise/contact?ref_page=/features/code-review&ref_cta=Contact%20Sales&ref_loc=cards" class="d-block btn-mktg" data-optimizely-event="click.contact_sales" data-optimizely-meta-requested-currency="" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Contact Sales","action":"click to open contact sales","label":"ref_page:/features/code-review;ref_cta:Contact Sales;ref_loc:pricing_plan_enterprise","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="7c0fbb7676415b34cd77378461f4a2014618b1eeb7d309fea70355db4a1d99fa" data-analytics-event="{"category":"Contact Sales","action":"click to open contact sales","label":"ref_page:/features/code-review;ref_cta:Contact Sales;ref_loc:pricing_plan_enterprise"}"> Contact Sales </a> </div> <div class="col-12 col-xl-6 mb-3 mb-xl-0"> <a class="d-block btn-mktg btn-muted-mktg btn-free-trial px-2" data-optimizely-event="click.create_enterprise_trial" data-hydro-click="{"event_type":"create_org.click","payload":{"category":"Organization creation","action":"click to set up organization","label":"ref_page:/features/code-review;ref_cta:Start a free trial;ref_loc:pricing_plan","location":"ENTERPRISE_FREE_TRIAL_BUTTON","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="6964080d76cff17cb6951e6229883cfc6394ecc88b6612c3615d7861c36fb028" href="/web/20211121183500/https://github.com/join?plan=business_plus&return_to=%2Faccount%2Forganizations%2Fnew%3Fplan%3Dbusiness_plus%26ref_cta%3DStart%252520a%252520free%252520trial%26ref_loc%3Dcards%26ref_page%3D%252Ffeatures%252Fcode-review&setup_organization=true">Start a free trial</a> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </main> </div> <footer class="footer pt-6 position-relative"> <div class="container-xl p-responsive"> <div class="d-flex flex-wrap py-5 mb-5"> <div class="col-12 col-lg-4 mb-5"> <a href="/web/20211121183500/https://github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to home","label":"text:home","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="2ddb9d5e49764b8e604a95b048de576ac24c34cc6ad50b3d7d58ee4bab77e4a5" data-analytics-event="{"category":"Footer","action":"go to home","label":"text:home"}" class="color-fg-default" aria-label="Go to GitHub homepage"> <img class="footer-logo-mktg" src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/icons/footer/github-logo.svg" width="84" height="30" loading="lazy" decoding="async" alt="GitHub"> </a> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-lg-0 pl-lg-4"> <h2 class="h5 mb-3 text-mono color-fg-muted text-normal"> Product </h2> <ul class="list-style-none color-fg-muted f5"> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to features","label":"text:features","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="a2ae60395085ea29fe6083d6b9af850e5a4655633f02b2860cd805dddc09c2f9" data-analytics-event="{"category":"Footer","action":"go to features","label":"text:features"}" href="/web/20211121183500/https://github.com/features">Features</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to security","label":"text:security","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="6f8e983a29d58a0d09cca9e3a569233e191d9ff9c5110839c501403618056b17" data-analytics-event="{"category":"Footer","action":"go to security","label":"text:security"}" href="/web/20211121183500/https://github.com/security">Security</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to team","label":"text:team","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="21b0da243e3c16c08d256d475fe8727f929948ea9edb6bf2492d3c1775be9735" data-analytics-event="{"category":"Footer","action":"go to team","label":"text:team"}" href="/web/20211121183500/https://github.com/team">Team</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to enterprise","label":"text:enterprise","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="c786b0ee9396d453e3257333d5289ed27c06d1effe54ef0de9222970854064de" data-analytics-event="{"category":"Footer","action":"go to enterprise","label":"text:enterprise"}" href="/web/20211121183500/https://github.com/enterprise">Enterprise</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to customer stories","label":"text:customer stories","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="16caac033fb764f0bcb492715cd16edb87b4e2fe94841a48cf897715f717baf3" data-analytics-event="{"category":"Footer","action":"go to customer stories","label":"text:customer stories"}" href="/web/20211121183500/https://github.com/customer-stories?type=enterprise">Customer stories</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to the readme project","label":"text:the readme project","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="621bf6fe24a981d93e9c1d8cae40b1e0d5e05d0a0bc0ce4da0b204d796ba4e58" data-analytics-event="{"category":"Footer","action":"go to the readme project","label":"text:the readme project"}" href="/web/20211121183500/https://github.com/readme">The ReadME Project</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to pricing","label":"text:pricing","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="7605866ce31839b58dba995d0c5a0c9211d297c25951fbe8bda8e46381b7e9d3" data-analytics-event="{"category":"Footer","action":"go to pricing","label":"text:pricing"}" href="/web/20211121183500/https://github.com/pricing">Pricing</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to resources","label":"text:resources","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="52350c6e66618025b4d7b2e6aabcb45bbe15eef953400d76bf4bf68c7bb74162" data-analytics-event="{"category":"Footer","action":"go to resources","label":"text:resources"}" href="https://web.archive.org/web/20211121183500/https://resources.github.com/">Resources</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to roadmap","label":"text:roadmap","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="7ee10f2cf26add0569b6508934b9e6843cfa888a8e282b73468e9c4579382912" data-analytics-event="{"category":"Footer","action":"go to roadmap","label":"text:roadmap"}" href="https://web.archive.org/web/20211121183500/https://github.com/github/roadmap">Roadmap</a> </li> </ul> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-md-0 pl-md-4"> <h2 class="h5 mb-3 text-mono color-fg-muted text-normal"> Platform </h2> <ul class="list-style-none f5"> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to api","label":"text:api","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="fb7e34944cb13638e1a1652f37443b1792dfed78e975adaba06cde156b239b4c" data-analytics-event="{"category":"Footer","action":"go to api","label":"text:api"}" href="https://web.archive.org/web/20211121183500/https://docs.github.com/">Developer API</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to partner","label":"text:partner","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="e143f7eaf9c764eb00040203a888a5917cec93ec07234702387d0bb20af3ef2e" data-analytics-event="{"category":"Footer","action":"go to partner","label":"text:partner"}" href="https://web.archive.org/web/20211121183500/https://partner.github.com/">Partners</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to atom","label":"text:atom","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="ab35675be21a50c826a86d6372b0aa758fcec82526f7ad05262d635f1706eada" data-analytics-event="{"category":"Footer","action":"go to atom","label":"text:atom"}" href="https://web.archive.org/web/20211121183500/https://atom.io/">Atom</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to electron","label":"text:electron","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="2d83cea796a1369a19f55f9a5ebae8ec4e2b9ef4031ca1c87ff0ca1b1648c437" data-analytics-event="{"category":"Footer","action":"go to electron","label":"text:electron"}" href="https://web.archive.org/web/20211121183500/https://www.electronjs.org/">Electron</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to desktop","label":"text:desktop","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="333b40959f9772e6058fc2f70ad819067029e613e55cde5147e9eb5bed0118ed" data-analytics-event="{"category":"Footer","action":"go to desktop","label":"text:desktop"}" href="https://web.archive.org/web/20211121183500/https://desktop.github.com/">GitHub Desktop</a> </li> </ul> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-md-0 pl-md-4"> <h2 class="h5 mb-3 text-mono color-fg-muted text-normal"> Support </h2> <ul class="list-style-none f5"> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to help","label":"text:Docs","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="e3638ad1cb87c09ed8e81e693974e12c7f50dac5a0ff9ed5f3bc7f4e71396e07" data-analytics-event="{"category":"Footer","action":"go to help","label":"text:Docs"}" href="https://web.archive.org/web/20211121183500/https://docs.github.com/">Docs</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to community","label":"text:community","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="4fffd92ee7e95e88002c0d006482b95ca10d817444fde6bed1becbcbc998e700" data-analytics-event="{"category":"Footer","action":"go to community","label":"text:community"}" href="https://web.archive.org/web/20211121183500/https://github.community/">Community Forum</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to professional services","label":"text:professional services","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="18f8f192e9c118e4271b1dca92b316413197684702d8e9c196994c5975a3a65b" data-analytics-event="{"category":"Footer","action":"go to professional services","label":"text:professional services"}" href="https://web.archive.org/web/20211121183500/https://services.github.com/">Professional Services</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to learning lab","label":"text:learning lab","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="a2fedac61e215b562a73a7f6518dae135b7a998e447124e3ccb52f4a1da8e779" data-analytics-event="{"category":"Footer","action":"go to learning lab","label":"text:learning lab"}" href="https://web.archive.org/web/20211121183500/https://lab.github.com/">Learning Lab</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to status","label":"text:status","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="c6ba3a53e18eab9860d6f4787e88d62e416a2b5614c8acdcd3419ae0069854cd" data-analytics-event="{"category":"Footer","action":"go to status","label":"text:status"}" href="https://web.archive.org/web/20211121183500/https://www.githubstatus.com/">Status</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to contact","label":"text:contact","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="77a8165ec7ef2d3f6045513121aafd73d0b1c26680b78f26030b2705255a2918" data-analytics-event="{"category":"Footer","action":"go to contact","label":"text:contact"}" href="https://web.archive.org/web/20211121183500/https://support.github.com/?tags=dotcom-footer">Contact GitHub</a> </li> </ul> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-md-0 pl-md-4"> <h2 class="h5 mb-3 text-mono color-fg-muted text-normal"> Company </h2> <ul class="list-style-none f5"> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to about","label":"text:about","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="b149733fd212261c6d6b3e1ebce9203ea972ccb249d010cce46518ebc529e6c9" data-analytics-event="{"category":"Footer","action":"go to about","label":"text:about"}" href="https://web.archive.org/web/20211121183500/https://github.com/about">About</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to blog","label":"text:blog","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="9f8c6ec1f0ee413c40ca779c1489a55e114a86564f54538e768f46cc02f734a2" data-analytics-event="{"category":"Footer","action":"go to blog","label":"text:blog"}" href="https://web.archive.org/web/20211121183500/https://github.blog/">Blog</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to careers","label":"text:careers","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="1550c08adea9bc7a4628318000f7ceffc2e7d20e7afb65a50e056ecd690ae4b1" data-analytics-event="{"category":"Footer","action":"go to careers","label":"text:careers"}" href="/web/20211121183500/https://github.com/about/careers">Careers</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to press","label":"text:press","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="b13725ff8dc2a5d3be28679f3d83a85a207bd43551d3f900eb9a0d04ec06b008" data-analytics-event="{"category":"Footer","action":"go to press","label":"text:press"}" href="/web/20211121183500/https://github.com/about/press">Press</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to diversity","label":"text:Inclusion","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="427f7885bb3c733093fb3f9fb1b0df0d1c3b4caa8de36a762671616e2a8b03bf" data-analytics-event="{"category":"Footer","action":"go to diversity","label":"text:Inclusion"}" href="/web/20211121183500/https://github.com/about/diversity">Inclusion</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to social impact","label":"text:social impact","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="7ffea215daf89477eefb92256af1b4c00fce4cd15599020b6c8052aa6de94307" data-analytics-event="{"category":"Footer","action":"go to social impact","label":"text:social impact"}" href="https://web.archive.org/web/20211121183500/https://socialimpact.github.com/">Social Impact</a> </li> <li class="lh-condensed mb-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to shop","label":"text:shop","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="0296d157e8ef68b2d62dc4398b61224d4d48ab590862375779d0d3aaba84b3e9" data-analytics-event="{"category":"Footer","action":"go to shop","label":"text:shop"}" href="https://web.archive.org/web/20211121183500/https://shop.github.com/">Shop</a> </li> </ul> </div> </div> </div> <div class="color-bg-subtle"> <div class="container-xl p-responsive f6 py-4 d-sm-flex flex-justify-between flex-row-reverse flex-items-center"> <ul class="list-style-none d-flex flex-items-center mb-3 mb-sm-0 lh-condensed-ultra"> <li class="mr-3"> <a href="https://web.archive.org/web/20211121183500/https://twitter.com/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Twitter","label":"text:twitter","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="8cc8917ed9d4f28eff76d18c0da22b5ebd575acfeb1e6eed8157d26df4f889a9" data-analytics-event="{"category":"Footer","action":"go to Twitter","label":"text:twitter"}" class="color-fg-subtle"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/icons/footer/twitter.svg" height="18" width="22" class="d-block" loading="lazy" decoding="async" alt="Twitter icon"> <span class="sr-only">GitHub on Twitter</span> </a> </li> <li class="mr-3"> <a href="https://web.archive.org/web/20211121183500/https://www.facebook.com/GitHub" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Facebook","label":"text:facebook","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="603f016fc214bc44460718c7ba753a99d848035eb1894a8906fb9d3e7de2db2b" data-analytics-event="{"category":"Footer","action":"go to Facebook","label":"text:facebook"}" class="color-fg-subtle"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/icons/footer/facebook.svg" width="18" height="18" class="d-block" loading="lazy" decoding="async" alt="Facebook icon"> <span class="sr-only">GitHub on Facebook</span> </a> </li> <li class="mr-3"> <a href="https://web.archive.org/web/20211121183500/https://www.youtube.com/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to YouTube","label":"text:youtube","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="2f92431ea32cbf8a8458bcf002cd6d274f634c031fb7a944c194c8c69c0cd6b9" data-analytics-event="{"category":"Footer","action":"go to YouTube","label":"text:youtube"}" class="color-fg-subtle"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/icons/footer/youtube.svg" width="23" height="16" class="d-block" loading="lazy" decoding="async" alt="YouTube icon"> <span class="sr-only">GitHub on YouTube</span> </a> </li> <li class="mr-3 flex-self-start"> <a href="https://web.archive.org/web/20211121183500/https://www.linkedin.com/company/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Linkedin","label":"text:linkedin","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="d8b9e80efa86f16213719055c2db9623da5c556f82c3ada1e49b0dd0b486f6d3" data-analytics-event="{"category":"Footer","action":"go to Linkedin","label":"text:linkedin"}" class="color-fg-subtle"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/icons/footer/linkedin.svg" width="19" height="18" class="d-block" loading="lazy" decoding="async" alt="Linkedin icon"> <span class="sr-only">GitHub on LinkedIn</span> </a> </li> <li> <a href="https://web.archive.org/web/20211121183500/https://github.com/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to github's org","label":"text:github","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="e042452ff51dadcb3ab1471f0d2b383c214e2732f67bb40e9f843ca1f03be64a" data-analytics-event="{"category":"Footer","action":"go to github's org","label":"text:github"}" class="color-fg-subtle"> <img src="https://web.archive.org/web/20211121183500im_/https://github.githubassets.com/images/modules/site/icons/footer/github-mark.svg" width="20" height="20" class="d-block" loading="lazy" decoding="async" alt="GitHub mark"> <span class="sr-only">GitHub’s organization on GitHub</span> </a> </li> </ul> <ul class="list-style-none d-flex flex-wrap color-fg-muted"> <li class="mr-3"> © 2021 GitHub, Inc. </li> <li class="mr-3"> <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/en/github/site-policy/github-terms-of-service" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to terms","label":"text:terms","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="25dc7b1c0172b818360f14fd41612d239ebe73099437b43d9e5648ec8e29e3b5" data-analytics-event="{"category":"Footer","action":"go to terms","label":"text:terms"}" class="Link--secondary">Terms</a> </li> <li class="mr-3"> <a href="https://web.archive.org/web/20211121183500/https://docs.github.com/en/github/site-policy/github-privacy-statement" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to privacy","label":"text:privacy","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="fae980a5d51106acf2d6c581e589a983fe4dca565a01b8d134a876b4e4f8b409" data-analytics-event="{"category":"Footer","action":"go to privacy","label":"text:privacy"}" class="Link--secondary">Privacy</a> </li> <li class="mr-3"> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to site map","label":"text:site map","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="24dc361d4f5e40807f03975968cfcaf78ee823cdb587faa5cc00981e9a64bb7a" data-analytics-event="{"category":"Footer","action":"go to site map","label":"text:site map"}" href="/web/20211121183500/https://github.com/site-map">Site Map</a> </li> <li> <a class="Link--secondary" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Git Guides","label":"text:What is Git?","originating_url":"https://github.com/features/code-review","user_id":null}}" data-hydro-click-hmac="63f4b0edd698ed3d30551ca2294db15b436e7a556ec03d871ab98debb25d9927" data-analytics-event="{"category":"Footer","action":"go to Git Guides","label":"text:What is Git?"}" href="/web/20211121183500/https://github.com/git-guides">What is Git?</a> </li> </ul> </div> </div> </footer> <div id="ajax-error-message" class="ajax-error-message flash flash-error" hidden> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert"> <path fill-rule="evenodd" d="M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"></path> </svg> <button type="button" class="flash-close js-ajax-error-dismiss" aria-label="Dismiss error"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x"> <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path> </svg> </button> You can’t perform that action at this time. </div> <div class="js-stale-session-flash flash flash-warn flash-banner" hidden> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert"> <path fill-rule="evenodd" d="M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"></path> </svg> <span class="js-stale-session-flash-signed-in" hidden>You signed in with another tab or window. <a href="">Reload</a> to refresh your session.</span> <span class="js-stale-session-flash-signed-out" hidden>You signed out in another tab or window. <a href="">Reload</a> to refresh your session.</span> </div> <template id="site-details-dialog"> <details class="details-reset details-overlay details-overlay-dark lh-default color-fg-default hx_rsm" open> <summary role="button" aria-label="Close dialog"></summary> <details-dialog class="Box Box--overlay d-flex flex-column anim-fade-in fast hx_rsm-dialog hx_rsm-modal"> <button class="Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0" type="button" aria-label="Close dialog" data-close-dialog> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x"> <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path> </svg> </button> <div class="octocat-spinner my-6 js-details-dialog-spinner"></div> </details-dialog> </details> </template> <div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;" tabindex="0"> <div class="Popover-message Popover-message--bottom-left Popover-message--large Box color-shadow-large" style="width:360px;"> </div> </div> <template id="snippet-clipboard-copy-button"> <div class="zeroclipboard-container position-absolute right-0 top-0"> <clipboard-copy aria-label="Copy" class="ClipboardButton btn js-clipboard-copy m-2 p-0 tooltipped-no-delay" data-copy-feedback="Copied!" data-tooltip-direction="w"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copy js-clipboard-copy-icon m-2"> <path fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path><path fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path> </svg> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check js-clipboard-check-icon color-fg-success d-none m-2"> <path fill-rule="evenodd" d="M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"></path> </svg> </clipboard-copy> </div> </template> </body> </html> <!-- FILE ARCHIVED ON 18:35:00 Nov 21, 2021 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 23:26:23 Nov 27, 2024. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 1.045 exclusion.robots: 0.042 exclusion.robots.policy: 0.03 esindex: 0.015 cdx.remote: 11.165 LoadShardBlock: 480.444 (6) PetaboxLoader3.datanode: 417.923 (7) PetaboxLoader3.resolve: 114.261 (2) load_resource: 132.692 -->