Skip to content
Code Review

Write better code

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.

Every change starts with a pull request.

The image shows a GitHub interface for opening a pull request. It features dropdown menus for selecting base and compare branches, a green checkmark indicating automatic merge capability, a text box for comments, and formatting options.

Every change starts with a pull request.

  • 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.
  • 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.

See every update
and act on it, in-situ

This image visually represents changes made to a stylesheet file, highlighting how the layout or design of a web page might be altered through these CSS adjustments.

Diffs

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.

Learn more
Screenshot of two commits added, and the changes were approved.

History

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.

Learn more
Image showing a file history showing four version entries with names and timestamps: 'First draft' and 'delete old pricing,' modified over the past few months.

Blame

See what a file looked like before a particular change. With blame view, you can see how any portion of your file has evolved over time without viewing the file’s full history.

Learn more

Discuss code
within your code

Comments

On GitHub, conversations happen alongside your code. Leave detailed comments on code syntax and ask questions about structure inline.

The image shows a section of a user interface. At the top, there is a list with three items: "Line 10: Layouts" with a minus sign in red, "Line 11: Grid system" with a plus sign in green, and "Line 12: Layout are built on a 12 column grids." Below this list, there is a comment from the user "rajqflow" made 1 day ago that says, "Good cal, this is more specific!" The comment has received 5 thumbs-up likes and 2 heart reactions.

Review requests

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.

GitHub pull request "Request a review" dialog showing reviewer selection. A search field labeled "Type or choose a user" appears above a list of reviewers. GitHub Copilot is selected and highlighted in green with the description "Your AI pair programmer," alongside two human reviewers, arturcraft (Artur Craft) and semyonrush (Semyon Rush). The dialog is displayed on a purple gradient background with a dotted pattern.

Reviews

Save your teammates a few notifications. Bundle your comments into one cohesive review, then specify whether comments are required changes or just suggestions.

Code diff in a stylesheet file showing CSS updates, with removed properties highlighted in red and new properties highlighted in green, including changes to positioning, spacing, and layout.

Merge the highest quality code

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.

Fast, relevant results

Set a minimum number of approving reviews, whether Copilot or human, before any pull request can merge.

Learn more

Protected branches

Control how code gets merged. Restrict who can push, require linear history, and prevent force pushes.

Learn more

Required status checks

Ensure CI passes, tests are green, and automated gates clear before the merge button is enabled.

Learn more

Every change starts with a pull request.

Get started