Important

You are browsing the documentation for version 4.1 of OroCommerce, OroCRM and OroPlatform, which is no longer maintained. Read version 5.1 (the latest LTS version) of the Oro documentation to get up-to-date information.

See our Release Process documentation for more information on the currently supported and upcoming releases.

Code Version Control

The following is a set of conventions about code version control that strives to provide the best way to communicate enough context about every committed code change to fellow developers. These code version control conventions should be used in all Oro projects, except for the projects that adopted some other conventions.

Git and Tools

Git is the official version control system used for the majority of the Oro projects. It allows for easy distribution of the source code and keeps each change under version control.

GitHub is our main collaborative development tool, so if you do not have an account yet, please sign up.

There is a number of tools to manage git repositories, for instance:

  • CLI git tools

  • PhpStorm Git Integration plugin

  • SourceTree

  • SmartGit, to name a few

Submit a Pull Request

The best way to contribute a bug fix or enhancement is to submit a pull request to the Oro repository on GitHub.

Before you submit your pull request consider the following guidelines:

  • Search GitHub for an open or closed pull request that relates to your submission. You do not want to duplicate effort.

  • Please sign our Contributor License Agreement (CLA) before submitting pull requests. The CLA must be signed for any code or documentation changes to be accepted.

Add a Commit Message

The merge commit message contains the message from the author of the changes. This can help understand what the changes were about and the reasoning behind the changes. Therefore, commit messages should include a list of performed actions or changes in the code:

<Commit summary>

  • <action 1>

  • <action 2>

  • <action 3>

See Also

Code Style

Set Up a Development Environment

Contribute to Translations

Contribute to Documentation

Report an Issue

Report a Security Issue

Contact Community

Release Process