This post will try to provide a few information to help you get started to contribute to Open Source projects. The first step is to know that the Projects following up some convections and standards which allow us to get involved quickly. See the typical layout of an Open Source.
- Check the README and the CONTRIBUTION guide
- Look for available channels to communicate with its maintainers such as mailing lists and slack channels.
Usually, projects require that you push the pull requests from your fork against the owner project repo. In this way, before starting to work with them ensure that you “forked” the project and you added the original repo as remote to your local clone. Following the steps:
- Fork the project:
- Clone your fork locally:
In your local machine, in the path where you’d like to have the project, clone your fork:
git clone firstname.lastname@example.org:<your-user>/<your-fork-project>.git ## E.g git clone email@example.com:camilamacedo86/postgresql-operator.git
- Go in the clone project directory and add the remote:
git remote add upstream firstname.lastname@example.org:<owner-repo><project>.git ## E.g git remote add upstream email@example.com:dev4devs-com/postgresql-operator.gi
- Commonly, the projects label the issues. The`good first issue` label describes the issues which are suggested for who would like to get started. You can filter by it:
- Look for to contribute to projects that you would like to learn more about or you are using.
- Getting started by contributing to the documentation. It will let you know more about the project and process to contribute with it.
- Help with the reviews; it is a great way to contribute and get involved to learn more.
- Another excellent label to check out is `help wanted`
- Try test your changes locally or in a CI in your fork before pushing a new pull request.
- Ensure that the CI finished successfully before asking reviews
- Keep in mind that you should ensure that your changes are covered by tests and is properly documented. Commonly, when we need to add a new feature or perform a change, it means that we need to add or update the tests and documentation properly and it ought to get in the same PR
- Not get stressed with the code reviews; it is part of the process to shape the solution in the best way as possible and the back and forwards are very common
- Avoid to be too much verbose in your comments and/or argumentations. Try to be more direct as possible to share your thoughts. Collaborators can be working on in many projects and Pull Request with a lot of very verbose comments can get stuck since collaborators might find themselves without time to follow up all threads.
- In the first moment, try to be very concise over what was changed and its motivation.
- Be respectable and assume the best intentions from the others
Also, I’d like to suggest you give a look in https://opensource.guide/how-to-contribute/.