2.4. Practicing Git IRL

In this section we will learn about the process of open-source development and how to contribute to existing projects on GitHub with Git.

2.4.1. Contributing

Often when we use a piece of software, there may be a feature we need but doesn’t exists yet. Or maybe we find a bug that we need to fix to use the code in our work but the busy project owner tells us to fix it ourselves and open a pull request. In this chapter we will practice making pull requests (requests for an owner of a repository to pull our code into its main codebase).

Before contributing to a project on GitHub it is best practice to read the project README and the CONTRIBUTING guidelines, generally in the top level of the repository on GitHub. For example, the SPIRL main repo is here and you can scroll down to read the README.md, or click the link to the CONTRIBUTING.md from there.

We will start our practice with a simple text contribution to a practice repository called Plutopy. It takes < 10 minutes!

2.4.2. Plutopy

Plutopy is a learning library targeted at first-time Git and GitHub users. Head over to the main repository page below, and follow the directions to the plutopy tutorial.

https://github.com/cjtu/plutopy

In the tutorial you will learn the steps for submitting a pull request (simply your name) to an open-source project on GitHub!

2.4.3. Open Pixel Art

Open Pixel Art is a community project which allows you to contribute a color to a community mosaic of pixels.

You can view the main artwork page here, or head straight to the contributing guide on the GitHub repository to contribute your color here.

If you want to look up the hex code of your favorite color, you can check out htmlcolorcodes.com.

2.4.4. Contributing to SPIRL

Since the SPIRL text that you are reading is also an open-source repository on GitHub, you can make contributions to it! The repository is located here. Feel free to fix typos and grammar, suggest new content on the issue board, or work on an existing issue, to help make this resource even more useful!

2.4.5. More practice

The following resources recommend accessible contributions you can make to open source! Keep up the learning by finding a worthy project to contribute to!