Work in Progress
This document is a work in progress.
This document is intended to capture all aspects related to contributing via Git and Github. While being WIP this document can contain questions (gathered from experience, and posts via mailing lists and the Slack channel) to be addressed.
Git Repositories
The project maintains several repositories (codebases):
Name | Description | Public location |
---|---|---|
ofbiz-framework | The repository containing all base components | https://github.com/apache/ofbiz-framework |
ofbiz-plugins | The repository containing several plugins | https://github.com/apache/ofbiz-plugins |
ofbiz-site | The repository containing the page of the official OFBiz site | https://github.com/apache/ofbiz-site |
ofbiz-tools | The repository containing several functions and services to maintain the project and its works | https://github.com/apache/ofbiz-tools |
Checkout the repo
Checking out one of the above mentioned repositories can be done in several ways.
Working with your own Github Clone
A Github clone is your remote git clone existing in your local environment.
Cloning is done through following commands in your cli:
Repo | command |
---|---|
ofbiz-framework | git clone https://github.com/apache/ofbiz-framework |
ofbiz-plugins | git clone https://github.com/apache/ofbiz-plugins |
ofbiz-site | git clone https://github.com/apache/ofbiz-site |
ofbiz-tools | git clone https://github.com/apache/ofbiz-tools |
Forking in Github
Forking the OFBiz repository in Github is - in essence - having your clone being publicly available to the community.
@todo
Contributing your changes to the project
Todo:
- addressing patch files?
- addressing interaction with JIRA
- addressing cherry-picking?
- addressing pull requests?
Git GUI Clients
Instead of working via the cli (terminal) that comes with your OS, you can also use dedicated Git GUI clients (software packages) to execute git commands.
An overview of clients available (for your os platform) can be found here: https://git-scm.com/downloads/guis
Of course, you can also use the git functionalities available in your IDE of choice (Apache Netbeans, Eclipse, IntelliJ, etc.)
Reporting Code Issues
The project's tool to report and track issues with code in the various repositories is JIRA (https://issues.apache.org/jira/projects/OFBIZ).
While Github also offers functionality to report issues, there is no bidirectional way to sync these with JIRA. Therefore, it is advised to register issues in JIRA as tickets there appear in the project's mailing lists to reach its community members in a better way.