Contributing Changes
GitHub Contribution Workflow
Before following this workflow please refer to our New Contributor Guide page for instructions on installing dependencies and setting up your development environment.
All changes should be made in a forked repository, submitted via pull request to the upstream develop branch which will be later merged into main for a new release by maintainers.
Opening a pull request (PR)
-
Fork the repository
- Navigate to the main repository on GitHub.
- Click the Fork button in the upper right corner.
- This creates a copy of the repository under your GitHub account.
-
Clone your fork
Clone your forked repository to your local machine:
git clone https://github.com/YOUR-USERNAME/REPOSITORY-NAME.git cd REPOSITORY-NAME -
Add upstream remote
Add the original repository and name it as
upstreamremote:git remote add upstream https://github.com/ORIGINAL-OWNER/REPOSITORY-NAME.git git remote -v -
Create a feature branch
Branch from
developusingfeature/<name>orbugfix/<name>:git checkout develop git pull upstream develop git checkout -b feature/new-feature -
Make changes & push to your fork
- Commit changes with clear messages.
- Push the branch to your forked repository.
git add . # adds changes in all non-ignored files in current folder git commit -m "Description of changes" git push origin feature/new-feature -
Create a pull request
- Navigate to the original repository on GitHub.
- Click Pull requests --> New pull request.
- Click Compare across forks.
- Set the base repository to
ORIGINAL-OWNER/REPOSITORY-NAMEand base branch todevelop. - Set the head repository to
YOUR-USERNAME/REPOSITORY-NAMEand compare branch tofeature/new-feature. - Click Create pull request and fill in the details.
- Address any review feedback.
-
Keep your fork updated
Regularly sync your fork with the upstream repository:
git checkout develop. # switch to local develop branch git pull upstream develop # sync the original branch with your local branch git push origin develop # update branch on your remote fork with synced local branch -
After merge & clean up
- After your PR is approved and merged into upstream
develop, delete your feature branch:
git checkout develop git branch -d feature/new-feature git push origin --delete feature/new-feature - After your PR is approved and merged into upstream
-
Release
- When
developis clean and ready for a new major release, maintainers will mergedevelopintomainand create a new release (with your contributions included).
- When