Project: Getting Comfortable with Git and the Command Line

An opportunity to put your money where your mouth is and actually deploy something to Github using a pull request.

Scroll down...




In this project, you'll learn how to contribute to an open source project and then you'll make your first pull request. This workflow will be used to collaborate with other students during the program.

The first part of this project will show you how to make an open source contribution and the second part will have you add your solution to one of the questions from the "Test Yourself" lesson to the repo.

A Git Workflow For Open Source Contribution

Let's say you want to contribute to a website and the code is on Github. How do you do that?

First, the "Easy" Way

The easiest way to contribute is actually to do what you've already done during the Git Assignment -- making a simple change directly on the Github website. See the video below for details:

...This is fine for small changes, but doesn't cut it for anything larger. Use the workflow below.

Then, the "Real" Way

If you want to do more than just modify a single file, you'll need to actually get the target repo onto your computer and eventually send your changes back via a pull request.

To learn this flow, we'll first show you the procedure as it's used for a real open source project. This project uses multiple branches, so it's a bit more complicated that what you'll be doing here but it's a good illustration of the concepts:

Time to Contribute!

You're going to make a contribution to the prep_basics repo. It will require you to replicate many of the things you just saw, though not all of them. For starters, we're only using the master branch so there's no need to worry about making a feature branch unless you want the practice -- whether you do or don't won't make a difference to the final pull request.


  1. Go to the prep_basics repo and look at the file called It contains the questions from the "Test Yourself" lesson and space to put answers.
  2. Identify 3 questions that you had trouble with or think should be better explained. You could also come up with your own questions based on areas you feel fuzzy on.
  3. Write an explanation in your own words to answer the selected questions and then add those answers to the repository via a pull request.


Similar to the video above, you'll need to:

  1. Fork the repo to your own
  2. Clone your fork to your local computer
  3. Add your solutions
  4. Verify that your local version is still up-to-date (by setting and checking the upstream remote)
  5. Push changes to your fork on Github and then submit the pull request.

...So go do it!

What's Next?

We'll look at your pull request to verify that it's proper before accepting it. If there are changes you need to make (for instance removing additional files that got sucked into it by accident), we'll let you know as part of the Pull Request dialogue. You're ready to move onto the Design mini-course, congratulations!

Sign up to track your progress for free

There are ( ) additional resources for this lesson. Check them out!

Sorry, comments aren't active just yet!

Next Lesson: Review of Concepts