meta data for this page
Contribute Code
If you are able to make a contribution that would make ITFlow better for everyone, please fork the repository and create a pull request.
We have moved to using two main branches:
- master - The main codebase for all installs, updated monthly
- develop - The active development branch, all PRs should be merged here
For large changes/new features, please ensure to discuss the issue/idea with other contributors on the Forum first. This saves everyone time.
Steps to raise a PR
- Fork the Project on GitHub
- Clone the development branch: (
git clone --branch develop https://github.com/itflow-org/itflow.git
) - Create your Feature Branch (
git checkout -b my-feature
) - Commit your Changes (
git add something.txt && git commit -m 'Add some
') - Push to the Branch (
git push origin my-feature
) - Open a Pull Request, adusting the base from master to develop
General Guidance
- Don't forget to set your $repo_branch in config.php to 'develop'
- Review the code standards and the code of conduct
- Discuss changes with the community first
- The core maintainers of ITFlow are Sysadmins just like you! If you've got an idea of something you'd like to change in ITFlow, give it a try!
- If you need some help with using Git/GitHub, this article is a great resource.
- Don't test on production; run a separate ITFlow instance for development
- Have some patience, this is a volunteer project
ITFlow, along with all contributions, is licensed under the GNU GPL. By contributing you grant us a perpetual & irrevocable license to include your work in ITFlow - on behalf of the community, thank you.
Other ways to contribute
There are other ways to contribute to ITFlow:
- Help out with the documentation
- Share your experience / methodologies / tactics using ITFlow on the forum to inspire others
- Report bugs and raise feature requests
- Tell others in the industry of your success using ITFlow to manage your clients (but please don't spam)
Maintainer Steps for monthly releases
Once a month, we will merge develop into master:
- Ensure testing has been completed as much as possible
- In develop, increment version.php in the YY.M.V format (e.g. 25.1 for the first release in Jan 2025, 25.1.1 for the second release of Jan 2025, and 25.6 for the first release in June 2025)
- Look over the recent changes and write a short release summary
- Raise a PR to merge develop into master
- Test a final time on PR Review & ensure no other issues (Sonar, Linting, etc)
- Approve the PR & Merge