master
branch 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 preview
branch which is what is checked out on the preview server. When new commits appear in the preview
branch, a GitHub webhook kicks in and pings the server to checkout the latest via git fetch && git checkout origin/preview
.preview
branch.master
. When a feature branch is ready for QA, it can be merged into preview
so that it will appear on the preview environment. The pull request for the feature branch into master
will remain open until it passes QA.preview
by 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.preview
branch is a dead-end branch, it should never get merged back into master
or any other branch. It's purpose is to review changes to feature/bugfix
branches before they get merged into master
. The preview
branch should always have a superset of the commits that are in master
. Periodically the preview
branch will need to get cleaned up and reset to master
(via 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 preview
.after_success
). We can also set up Travis CI to automatically pick up pushes to the preview
branch and push them to a Pantheon preview
multidev environment, which will allow us to keep features from being merged into master
before they have passed QA.