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 [2023/09/28 06:55] – Add other ways to contribute besides code wrongechocontribute [2025/06/07 16:03] (current) – [Policies & Guidelines] c/e wrongecho
Line 1: Line 1:
-====== Contribute Code ======+====== Contributing to ITFlow ======
  
 +If you are able to make a contribution that would make ITFlow better for everyone, please do!
  
-If you are able to make a contribution that would make ITFlow better for everyone, please fork the repository and create pull request.+You can contribute to ITFlow in few ways:
  
-For large changes/new features, please discuss the issue with other contributors first.+  * Contribute code 
 +  * Update documentation by selecting the pencil icon on the right-side of a page 
 +  * Report bugs 
 +  * Suggest feature enhancements 
 +  * Star the project on GitHub 
 +  * Tell others of your success using ITFlow (please don't spam)
  
-  - Fork the Project 
-  - 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]].+===== Policies & Guidelines =====
  
 +Before contributing to ITFlow you should be aware of these documents:
  
-===== I'm not a developer but want to try and contribute code =====+  * [[https://github.com/itflow-org/itflow/blob/master/LICENSE|GNU GPL License]] 
 +  * [[https://github.com/itflow-org/itflow/blob/master/CODE_OF_CONDUCT.md|Code of conduct]] 
 +  * [[https://github.com/itflow-org/itflow/security|Security policy]] 
 +  * [[code_standards|Code Standards]] 
 +  * [[doc_standards|Documentation standards]] 
 +  * [[ai_llm_policy|Use of AI / LLM]]
  
 +===== Contribute Code =====
  
-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.+To contribute code to ITFlow, you will need to fork the repository and create a pull request.
  
-Firstreview the [[code_standards|code standards]] page. This will give you an idea of how we name variables and what files do what.+Before doing soplease ensure to discuss the issue/idea with other contributors on the Forum first - this saves everyone time and ensures your contribution is aligned with our goals.
  
-If you need some help with using Git/GitHub[[https://www.dataschool.io/how-to-contribute-on-github/|this article]] is a great resource.+The code for ITFlow is split into two branches: 
 +  - **master** - The main codebase for all installsupdated ~monthly (demodemo.itflow.org) 
 +  **develop** The active development branch, all PRs should be merged here (demo: develop.dev.itflow.org)
  
-Once you've got a working [[installation|installation]], switch to a new branch (''git checkout -b mybranch'').+==== Steps to raise pull request (PR) ==== 
 +  - Fork the Project on GitHub 
 +  - Clone the develop branch: (''git clone //-//-branch develop https://github.com/itflow-org/itflow.git'') and follow the setup guide 
 +  - Set your ''$repo_branch'' in ''config.php'' to 'develop' 
 +  - Create your branch (''git checkout -b my-branch'') 
 +  - Commit your Changes (''git add something.txt && git commit -m 'Add some'''
 +  - Push to your branch (''git push origin my-branch''
 +  - Open a Pull Request, ensuring to adjust the base from master to develop 
 +  - {{:pr_-_select-mh.png?direct&550|}}
  
-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.//+=====Maintainer Steps for monthly releases=====
  
-Once you've got your changes workingadd & commit your files (''git add myfile.php && git commit -m "My change"''), and push them to your GitHub account (''git push origin mybranch'').+Around once a monthwe will merge develop into master for a new releaseThe steps are:
  
-You'll be prompted to raise a pull request where we can discuss your changes and eventually merge them into ITFlow! +  - Ensure testing has been completed as much as possible 
- +  Update the changelog 
----- +  - 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 
-====== Other ways to contribute ====== +  - Raise a PR to merge develop into master 
- +  - Test a final time on PR Review & ensure no other issues (Sonar, Linting, etc) 
-There are other ways to contribute to ITFlow: +  - Approve the PR & Merge
- +
-  * Help out with the documentation //(ask on the forum for a Docuwiki account)// +
-  * 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)//+