Skip to content
This repository has been archived by the owner on Mar 25, 2019. It is now read-only.

Integrator Workflow

Enrico Spinielli edited this page Jan 26, 2017 · 14 revisions

WikiIntegrator Workflow

Your team has decided to integrate a pull request (PR) in master, you are given the task to merge it.

Preconditions

  1. You have already cloned the repo, see Workflow Initialization.

  2. Your master branch is up-to-date

    (master) $ git pull
  3. The release branch (i.e. 201605-release) or fix (i.e. 201605-release-fixME) has successfully been build by TravisCI and has no merge conflicts

  4. you configuration is such that tags will be pushed with commits (this is needed only once per machine):

    $ git config --global push.followTags true

Steps

  1. switch to the relevant branch, i.e. the bugfix one:

    (master) $ git checkout 201605-release-fixIT
  2. make sure everything compiles and works ok

  3. switch to master and merge (--squash is for compressing all commits in the branch into a single bundle) the relevant branch:

    (master) $ git checkout master
    (master) $ git merge --squash 201605-release-fixIT
    (master) $ git commit -m "May 2016 Release"
  4. check which is the latest tag used for the relevant release, i.e. for 2016 (v2) May (5) release it could be v2.5.4

    (master) $ git tag -l
    v2.2.0
    v2.2.1
    v2.3.0
    v2.3.1
    v2.3.2
    v2.4.0
    v2.4.1
    v2.4.2
    v2.5.0
    v2.5.1
    v2.5.2
    v2.5.3
    v2.5.4
  5. tag the latest release/fix commit so that Travis CI will automatically trigger a deployment when you will merge:

    (master) $ git tag -af v2.6.0 -m "June 2016 Release"
    (master) $ git push origin --follow-tags master
  6. Check TraviCI and make sure the automatic build succeeded

  7. Check euctrl-pru.github.io commits in order to see that a new one has been added by TravisCI.

  8. Wait some minutes to check ansperformance.eu for the relevant changes.