meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
contribute [2024/12/17 20:45] – tidy wrongechocontribute [2025/01/09 16:50] (current) – mention $repo_branch in config.php wrongecho
Line 1: Line 1:
 ====== Contribute Code ====== ====== 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. If you are able to make a contribution that would make ITFlow better for everyone, please fork the repository and create a pull request.
  
-For large changes/new featuresplease discuss the issue with other contributors first.+We have moved to using two main branches: 
 +  - **master** - The main codebase for all installsupdated monthly 
 +  - **develop** - The active development branch, all PRs should be merged here
  
-  - Fork the Project +//For large changes/new features, please ensure to discuss the issue/idea with other contributors on the Forum first. This saves everyone time.//
-  - Create your Feature Branch (''git checkout -b feature''+
-  - Commit your Changes (''git commit -m 'Add some'''+
-  - Push to the Branch (''git push origin feature''+
-  - Open a Pull Request+
  
-ITFlow, along with all contributions, is [[https://github.com/itflow-org/itflow/blob/master/LICENSE|licensed under the GNU GPL]]By contributing you grant us a perpetual & irrevocable license to include your work in ITFlow on behalf of the communitythank you.+**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 Requestadusting the base from master to develop 
 +  - {{:pr_-_select-mh.png?direct&550|}}
  
 +**General Guidance**
 +  * Don't forget to set your $repo_branch in config.php to 'develop'
 +  * Review the [[code_standards|code standards]] and the [[https://github.com/itflow-org/itflow/blob/master/CODE_OF_CONDUCT.md|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, [[https://www.dataschool.io/how-to-contribute-on-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
  
-===== I'm not a developer but want to try and contribute code ===== +ITFlow, along with all contributionsis [[https://github.com/itflow-org/itflow/blob/master/LICENSE|licensed under the GNU GPL]]. By contributing you grant us perpetual & irrevocable license to include your work in ITFlow on behalf of the communitythank you.
- +
- +
-The core maintainers of ITFlow are more Sysadmins than developers. If you've got an idea of something you'd like to change in ITFlow, give it a try! This could be anything and doesn't have to be huge to be helpful to the project - fixing typos, adjusting icons, etc. +
- +
-First, review the [[code_standards|code standards]] page. This will give you an idea of how we name variables and what files do what. +
- +
-If you need some help with using Git/GitHub, [[https://www.dataschool.io/how-to-contribute-on-github/|this article]] is a great resource. +
- +
-Once you've got working [[installation|installation]], switch to a new branch (''git checkout -b mybranch''). +
- +
-Locate the page that holds the functionality you'd like to amend and start making changes. It's usually helpful to break down your desired goal into small chunks you can incrementally add. +
- +
-//If you're doing lots of work with forms (generally submitting to post.php), you might want to look into something like Burp Suite to speed things up.// +
- +
-Once you've got your changes working, add & commit your files (''git add myfile.php && git commit -m "My change"''), and push them to your GitHub account (''git push origin mybranch''). +
- +
-You'll be prompted to raise a pull request where we can discuss your changes and eventually merge them into ITFlow! +
  
 ====== Other ways to contribute ====== ====== Other ways to contribute ======
Line 43: Line 37:
   * Report bugs and raise feature requests   * 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)//   * 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