Development Workflow of Project on Shopsys Framework

Requirements

How to develop a new feature

  1. Create a new branch from master branch e.g. my-new-feature

  2. Develop your feature

  3. Check and automatically fix your code standards using php phing standards-fix-diff

    Hint

    In this step you were using Phing target standards-fix-diff.
    More information about what Phing targets are and how they work can be found in Console Commands for Application Management (Phing Targets)

  4. Check if all tests are passing using php phing tests

  5. Run acceptance tests php phing tests-acceptance

    Tip

    We suggest you running acceptance tests on your Continuous Integration server because it takes several minutes to run them.

  6. Create commit with descriptive commit message about changes you have made.

    Tip

    We have Guidelines for Creating Commits for contributors to Shopsys Framework. These guidelines suggest some best practices for creating commits that you could adopt on your project.

  7. Push changes to your remote GIT repository

  8. Let some colleague review your code and fix all reported problems

    Note

    We pay a lot of attention to code quality in Shopsys company. Apart from automatic testing and coding standards checks at least one of the colleagues reviews your code and another colleague tests changes whether they are working properly. We found this practices very important and we suggest them to you as part of your development process.

  9. Rebase your branch on the current version of master branch

    Note

    This leads to clean GIT history.

  10. Merge your branch (e.g. my-new-feature) into master branch.

  11. Push master branch