Skip to end of metadata
Go to start of metadata

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.

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.




Front office (theme, front controller, images, CSS, JavaScript, module's FO, PDF, etc.).


Back office (theme, admin controller, images, CSS, JavaScript, module's BO, etc.).

COThe core of the software itself: classes, controllers, etc.


All the files in the /install folder.


Web Service.


Localization pack.

TEUnit tests or functional test.

Short description

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.

You can copy/paste from existing files in the project.

You can also use this for general files:

...or for modules...

  • No labels