How to write a commit message
When you contribute code to the PrestaShop project (through Github), we ask that you strictly use the PrestaShop way of writing a commit name. This way, when building the code history, your commit message will fit nicely with the ones from others contributors and from the PrestaShop developers.
These conventions also apply to pull request titles – unless your pull request contains several atomic commits, in which case we ask you to use a PR title which gives a good idea of what all the commits do.
The conventions were changed on May 5th, 2016, and are now much simpler.
Commit naming convention
The commit's name must be in English, and should be formatted like this:
The title of the pull request should simply describe its content (whether it contains one or several commits), in the clearest way possible. The title should reflect the overall change of the pull request.
The category is the portion of the project to which your changes apply to.
|CO||The core of the software itself: classes, controllers, etc.|
All the files in the
Modules. Please specify the module's name in the content of commit message.
PDF template modifications.
|TE||Unit tests or functional test.|
Use the description to explain what your commit does in a few words. Try to be concise!
If you fixed a ticket from the Forge, please add a link to that ticket in the first comment and specify the bug's Forge number in the description (eg: #PSCFV-007).
Description of the commit / pull request
You can put more details in the commit description.
If your code change requires a lot of explanation, please open a Forge ticket explaining your intent with this code change, so that the Product team can discuss it with you. Once the ticket is created, link to it from the PR's comment, and give a link to the PR from the ticket, in order to bridge the two.
Sample commit message
Here are a few sample messages:
Adding the correct license to new files
By submitting your code to the PrestaShop project, you are releasing it under a Open Source license: either OSL or AFL.
If you add new files, they need to have the "NOTICE OF LICENSE" and the "DISCLAIMER" sections at the start of the file.
- For general PrestaShop files: the notice should mention the OSL 3.0 license.
- For module files: the notice should mention the AFL 3.0 license.
You can copy/paste from existing files in the project.
You can also use this for general files:
...or for modules...