Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update CONTRIBUTING.md clarifying release instructions #352

Merged
merged 8 commits into from
Jul 10, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 11 additions & 9 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,14 @@ The `develop` branch is the development branch which means it contains the next

## Release instructions

1. Version bump: Bump the version number in `distributor.php` if it does not already reflect the version being released. Ensure that it is suffixed with `-dev`.
2. Changelog: Add/update the changelog in `CHANGELOG.md`
3. Merge: Make a non-fast-forward merge from `develop` to `master`. `master` contains the stable development version.
4. Build: In the `master` branch, run `npm run release`. This will create a subfolder called `release` with the `stable` branch cloned into it as a worktree and latest changes copied over. Ensure that any new files are in the `release` folder; if not, you may need to add them to `gulp-tasks/copy.js`.
5. Check: Are there any modified files, such as `distributor.pot`? If so, head back to `develop`, run all necessary tasks and commit those changes before heading back to step 3.
6. Test: Switch to running Distributor from the version in the `release` subfolder and run through a few common tasks in the UI to ensure functionality.
7. Push: From within the `release` directory, add all files and push them to `origin stable`.
8. Git tag: Tag the release as `X.Y.Z` on the `stable` branch in Git and push the tag to GitHub. It should now appear under [releases](https://github.com/10up/distributor/releases) as well.
9. Version bump (again): Bump the version number in `distributor.php` to `X.Y.(Z+1)-dev`. It's okay if the next release might be a different version number; that change can be handled right before release in the first step, as might also be the case with `@since` annotations.
1. Starting from `develop` cut a release branches for your changes.
2. Version bump: Bump the version number in `distributor.php` if it does not already reflect the version being released. Update both the plugin "Version:" property and the plugin `DT_VERSION` constant, ensuring that it is suffixed with `-dev`.
3. Changelog: Add/update the changelog in `CHANGELOG.md`
4. Update the `.pot` file by running `npm run makepot`.
5. Merge: Make a non-fast-forward merge from your release branch to `master`. `master` contains the stable development version.
6. Build: In the `master` branch, run `npm install && npm run release`. This will create a subfolder called `release` with the `stable` branch cloned into it as a worktree and latest changes copied over. Ensure that any new files are in the `release` folder; if not, you may need to add them to `gulp-tasks/copy.js`.
7. Check: Are there any modified files, such as `distributor.pot`? If so, head back to `develop`, run all necessary tasks and commit those changes before heading back to step 3.
8. Test: Switch to running Distributor from the version in the `release` subfolder and run through a few common tasks in the UI to ensure functionality.
9. Push: First master: `git push`, then from within the `release` directory, add all files and push them to `origin stable`: `git push origin stable`.
10. Git tag: Create the release as `X.Y.Z` on the `stable` branch in GitHub. It should now appear under [releases](https://github.com/10up/distributor/releases) as well.
11. Version bump (again): In the `develop` branch (`cd ../ && git checkout develop`) bump the version number in `distributor.php` to `X.Y.(Z+1)-dev`. It's okay if the next release might be a different version number; that change can be handled right before release in the first step, as might also be the case with `@since` annotations.