How to Open Your First GitHub Pull Request: A Step-by-Step Guide

 



Whether you are collaborating on a team project at work or making your first contribution to open-source software, mastering the GitHub Pull Request (PR) workflow is essential. A Pull Request is more than just code submission—it is a platform for code review, discussion, and quality assurance.

Here is a straightforward guide to taking code from your local machine to a successfully merged pull request.

Step 1: Fork and Clone the Repository

If you don't have write access to the original repository (common in open-source), start by creating a Fork (your own copy of the project on GitHub).

  1. Click the Fork button at the top right of the target GitHub repository.

  2. Clone your fork locally to your machine:

Bash
git clone https://github.com/YOUR_USERNAME/repository-name.git
cd repository-name

Step 2: Create a Feature Branch

Never commit directly to the main or master branch. Always create a dedicated branch for your bug fix or new feature.

Bash
git checkout -b feature/add-dark-mode-toggle

Step 3: Make Changes and Commit

Write your code, test your changes locally, and stage them cleanly.

Bash
# Check modified files
git status

# Stage specific files
git add src/components/DarkModeToggle.jsx

# Commit with a clear message
git commit -m "feat: add interactive dark mode toggle component"

Step 4: Push to Your Fork

Push your new branch up to your GitHub repository:

Bash
git push -u origin feature/add-dark-mode-toggle

Step 5: Open the Pull Request

  1. Go to the original repository on GitHub.

  2. You will see a banner saying "Compare & pull request". Click it.

  3. Fill out the PR template with clear context:

    • Title: Keep it concise (e.g., feat: implement dark mode toggle).

    • Description: Explain what changes were made and why. Add screenshots if you modified the UI.

  4. Click Create Pull Request.

Step 6: Handle Reviews Gracefully

Once submitted, team members or maintainers may review your code and leave feedback or request changes.

  • Don't take critical feedback personally—code reviews are designed to catch bugs and improve code quality.

  • Address requested updates locally on the same branch, commit them, and push again. The PR updates automatically!

Post a Comment

0 Comments