Submitting a Pull Request via GitHub¶
Submitting a Pull Request (PR) via GitHub is the fastest and best way to contribute source code changes to the pfSense® CE project.
Using a PR allows developers to easily review and comment on changes, allows easy testing via patches from the System Patches Package, and allows the changes to be easily merged into the project.
Creating a PR is a relatively straightforward process but there are a few guidelines and suggestions to follow when submitting contributions:
Ensure the bug or feature has an entry on the pfSense Redmine
Create a new entry if one does not exist.
The only exceptions to this are for very minor typo/wording fixes.
Read through and follow the Developer Style Guide
Read through the GitHub documentation on pull requests
Create a fork of the correct repository (e.g. pfSense/pfSense for the base system, or pfSense/FreeBSD-ports for packages)
Always submit pull/merge requests to the
master
branch of thepfSense/pfSense
repository or thedevel
branch ofpfSense/FreeBSD-ports
.The exception to this is when making PRs for multiple branches due syntax or other differences which require variations that prevent a regular cherry-pick or similar action from copying the commit to other branches
When making commits to the fork, reference the relevant Redmine entry
When ready to submit the changes, create a pull request from the fork to the appropriate branch
The PR title should be a short summary of the changes and include a reference to the relevant Redmine issue number(s)
The PR description should include a longer explanation of the proposed changes and link to the relevant Redmine issue number(s)
After submitting the pull request, add a link to the PR on the related Redmine issue to cross-reference the entries.