masterbranch for these site repos corresponds to what is currently in SVN, which makes this branch not suitable for our preview environment. So we have standardized on each theme repo having a
previewbranch which is what is checked out on the preview server. When new commits appear in the
previewbranch, a GitHub webhook kicks in and pings the server to checkout the latest via
git fetch && git checkout origin/preview.
master. When a feature branch is ready for QA, it can be merged into
previewso that it will appear on the preview environment. The pull request for the feature branch into
masterwill remain open until it passes QA.
previewby means of pull requests, since this just adds GitHub notification noise. Instead, do the merges directly from the command line, even use a script to make it easy.
previewbranch is a dead-end branch, it should never get merged back into
masteror any other branch. It's purpose is to review changes to
feature/bugfixbranches before they get merged into
previewbranch should always have a superset of the commits that are in
master. Periodically the
previewbranch will need to get cleaned up and reset to
git checkout preview && git reset --hard master && git push -f). When this is done, make sure that any open pull request branches get re-merged into
after_success). We can also set up Travis CI to automatically pick up pushes to the
previewbranch and push them to a Pantheon
previewmultidev environment, which will allow us to keep features from being merged into
masterbefore they have passed QA.