Choosing an issue

Commerce uses GitHub for code and for tracking issues. To choose an issue, go through the open issues, pick one you like and assign it to you.

If you need help choosing an issue or working on one, join the Commerce 2.x office hours. They are held every wednesday at 3PM GMT+1 on the #drupal-commerce IRC channel.

Tip: You can also view the issue queue as a kanban board.

Creating a pull request

Start by creating a branch for your work. The branch name should contain a brief summary of its id and the issue, e.g 2276369-fix-product-form-notice:

cd web/modules/contrib/commerce
git checkout -b 2276369-fix-product-form-notice

Once you’re done with development, push your commits to your fork:

git commit -a -m "Issue 2276369: Fix notice in the product form."
git push fork 2276369-fix-product-form-notice

You can now go to your fork’s GitHub page and create a pull request. Your pull request should link to the issue, and vice-versa.

After your code has been reviewed, you might be asked to perform some changes and then have them reviewed again:

# Change the desired files.
git commit -a -m "Addressed feedback."
git push fork 2276369-fix-product-form-notice

Updating the branch will automatically update the related pull request.

Keeping up to date

Your forked repository and the original one (called origin) will eventually get out of sync. Periodically update your fork by doing:

# Update your local branch.
git checkout 8.x-2.x
git pull origin/8.x-2.x
# Push the update to your GitHub fork.
git push fork 8.x-2.x

Your pull request might also need rebasing, to re-apply your changes on top of the latest code. Once you’ve updated the master branch (8.x-2.x), rebase your branch:

git checkout 2276369-fix-product-form-notice
git rebase 8.x-2.x
git push -f fork 2276369-fix-product-form-notice

That’s it! Happy contributing!

Found errors? Think you can improve this documentation? edit this page