How To Make A Pull Request Without Pulling Your Hair Out
Tags: tutorial, github, beginners, opensource
Published: 2023-02-19 22:08:34

---
title: How To Make A Pull Request Without Pulling Your Hair Out
published: true
date: 2023-02-18 22:55:39 UTC
tags: #tutorial #github #beginners #opensource
series: Chrissy’s Open Source Survival Guide
canonical_url: https://chrissycodes.hashnode.dev/how-to-make-a-pull-request-without-pulling-your-hair-out
---
![Grey background with the black-outlined GitHub icon. On the top right, there is pull request icon in black whereas on the middle left, you see "How To Make A Pull Request Without Pulling Your Hair Out" written in white and the tagline "Written by Chrissy Codes" written in black.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tlsbz7qdvogeozq1krkq.jpeg)
### Welcome Back!!!

Congratulations! You've picked an open source project to contribute to and you're ready to start making a difference(Need a refresher? Check out this and that previous post.)! But before we can celebrate, you'll need to learn about one of the most essential tools in your open source contributor's toolkit: the pull request! So grab a snack and open that Google Doc (or whatever word-processing software you use), because

![Willow Smith in a yellow hoodie and a dreadlocked ponytail says "Class is in season"](https://media.giphy.com/media/dZd0fvvUdMpz5DNW9A/giphy.gif)

### What the heck is a Pull Request?

Before I let you go and be "pull request happy", let's define what a pull request is. It's when you add your suggestion to an open source project via a line of code.

![This is a multicolored diagram]()

Think of it as a software development version of putting your comments onto a shared Google Doc or presentation for a group project for school. It's essential in the open source contribution process because your line of code impacts how the project functions. Now that's settled, on to making your first pull request!

![Movie countdown(e.g., 3, 2, 1)](https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExZjY5ZGZlZTk1MzBlY2MyYjk3YWRjZmE0YjIwMTJkZGU1NDQ4NmM0YSZjdD1n/CH8pZqw2t0G7m/giphy.gif)

### Creating a Pull Request

Now there are so many methods to making a PR(these are the initials for pull requests), but here are steps that I find helpful.  
1. Fork the project's repository

![A repository is about to be forked.](https://cdn.hashnode.com/res/hashnode/image/upload/v1676757278238/7be1cca2-87f7-4fe3-9a07-92f10ac3628c.png)

1. Make your desired changes to the code or documentation

2. Click on **Commit Changes**

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1676757446202/925fa63e-07de-4f9b-bac8-0d8fb7e5b364.png)

1. Add your message in the commit message textbox, pick the **Create a new branch for this commit and start a pull request** option, and click on **Propose changes.**

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1676759635626/5558d222-bacb-43eb-b409-7d0c744fa056.png)

1. Go to the projects repository and click on **Compare & Pull Request**

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1676759685270/9ed948d0-8e52-4596-973d-594b5f08fbc5.png)

1. Describe your changes in the pull request form, click on **Create Pull Request** , and wait for feedback from the projects maintainers

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1676759723886/909fe211-e671-474e-89ec-872f17954c30.png)

Congratulations, you're now a pull request pro! But before you start PR-bombing every open source project out there, let's cover some best practices to make sure your contributions are effective and appreciated by the project maintainers. So, let's dive into some essential PR dos and don'ts!

### PR Dos and Donts

**DOs:**

1. Use a descriptive title that summarizes your changes.

2. Reference any relevant issue numbers in your pull request description.

3. Add screenshots or other visual aids to help explain your changes (if applicable).

4. Refer to the checklist shown on your pull request to ensure that you have completed all necessary steps.

**DON'Ts:**

1. Don't make overly large or complex pull requests: it's better to break changes down into smaller, more manageable chunks.

2. Don't make stylistic changes that are unrelated to the main purpose of the project.

3. Don't disregard any code formatting or style guidelines set by the project maintainers.

4. Don't forget to test your changes before submitting the pull request.

### Conclusion

Congratulations, you're now a pull request pro, woohoo! Remember, making contributions to open source projects can be a fulfilling and rewarding experience. If you need a coding buddy or more inspiration, follow me on [Hashnode](https://chrissycodes.hashnode.dev/) and my other socials on [Linkfree](https://linkfree.eddiehub.io/CBID2). May your contributions be bug-free and legendary.

![Looney Tunes ending: "That's All Folks"](https://64.media.tumblr.com/f5436f265630043b4163b3b796436229/tumblr_nerv5zwzCr1sgl0ajo1_500.gifv)

### Credits

3 2 1 Waiting GIF [**by Funimation**](https://media.giphy.com/media/CH8pZqw2t0G7m/giphy.gif)

GitHub Pull Request Diagram by [Crunchify](https://crunchify.com/how-to-fork-github-repository-create-pull-request-and-merge/)

Level Up Glu GIF by [Ground Level Up](https://media.giphy.com/media/L0eLbQSACTr10Voj83/giphy.gif)

Willow Smith GIF by [Red Table Talk](https://media.giphy.com/media/dZd0fvvUdMpz5DNW9A/giphy.gif)