There are quite a few ways to get involved with the Contributor Experience Project. You can:
- join one of our community calls
- join our Zulip chat
- share your ideas by filing issues, submitting pull requests, or commenting on existing discussions
- address issues filed by other contributors
- review submitted PRs
- add to our Tools Collection.
- If you want to add tools to the guide, please add the version of the software you are recommending. If the version is not available, please add the date of writing.
- Add examples of those tools as used by some open-source projects if possible.
- Add links to the original documentation.
Never made an open source contribution before? Wondering how contributions work in our project? Here's a quick rundown!
-
Find an issue that you are interested in addressing or decide on content or feature that you would like to add.
-
Fork the Contributor Experience Handbook repository to your GitHub profile. This means that you will have a copy of the repository
<github-username>/handbook.
To fork the repository, you can use the
Fork
button on the GitHub web interface for this repo. -
Clone the repository to your local machine using:
git clone https://github.com/<github-username>/handbook.git
This means you will now have a local copy of all the contents in the GitHub repository on your computer in the
handbook
folder. You can rename this folder to any names you like - all the git-related information will be unchanged. -
Add the
upstream
remoteIf you want to submit pull requests and share changes to the Handbook back to the community, you need to point git to the correct repos. You can do this by setting your remote repositories.
By convention, we will use the name
origin
to point to your fork of the repository and we will callupstream
the original Contributor Experience Handbook repo. To inform git, you can run the following command:git remote add upstream https://github.com/contributor-experience/handbook.git
Now, if you run
git remote -v
you should see something like:
origin git@github.com:<github-username>/handbook.git (fetch) origin git@github.com:<github-username>/handbook.git (push) upstream git@github.com:contributor-experience/handbook.git (fetch) upstream git@github.com:contributor-experience/handbook.git (push)
This means you are all set!
-
(Optional) Pull the latest changes from the main repository if you think your fork is behind:
git pull upstream main
-
Create a new branch and switch to it to work on your task (a selected issue, content, or feature):
git switch -c <branch-name>
It is good practice to create a new branch for each new fix/improvement your are working on. This ensures that the history of the changes to the project is well organized. You can name your branch anything - this does not interfere with the commit history.
-
Once you finished making changes to the existing code, you need to add all these changes to the staging area and commit them to the branch you are working on
git add <files-to-be-changed> git commit -m "<commit message>"
where
<commit-message>
is a brief explanation of what you did. -
Push the changes to the remote repository using:
git push origin <branch-name>
-
Submit a pull request to the upstream repository.
-
Title the pull request with a short description of the changes made.
-
Wait for the pull request to be reviewed by the project team member.
Currently, the Contributor Experience project is led by a team of three people. While only these team members have GitHub permissions to merge pull requests, we welcome pull request reviews by anyone - suggestions and comments are valuable contributions to our project.
-
Make changes to the pull request if the reviewing team member recommends them.
-
Celebrate your success after your pull request is merged!
Thanks for taking the time to contribute! ❤️
Don't forget to leave a star. 🌟