-
Notifications
You must be signed in to change notification settings - Fork 302
Release Management (draft)
This is our official process for releasing new versions of digital.gov.
- Follow well-established versioning practices
- Provide detailed notes for each release
- Encourage contributions and thank contributors for their hard work
{{ version }}
should always be replaced with the semantic version number, i.e. 1.2.1
-
Determine if the version is a patch (
#.#.#
), minor (#.#.0
), or major (#.0.0
) version -
Branch off master and use the branch name format
release-{{ version }}
:git pull origin master git checkout -b release-{{ version }} origin/master
Example > git checkout -b release-0.0.7 origin/master
npm version
will increment the version number semantically in package.json
and commit the changes to git. Versions will be tagged on the master branch. See the npm publish
documentation for additional options.
- For prerelease releases: Run
npm version prerelease --no-tag
. - For patch releases: Run
npm version patch --no-tag
. - For minor releases: Run
npm version minor --no-tag
. - For major releases: Run
npm version major --no-tag
.
This bumps the version number in package.json
and commits that change. It should echo back the new version number to your terminal command line. git log
should show that new commit.
- Push the version branch up to GitHub
- Submit a Pull Request and Merge
release-{{ version }}
back into themaster
branch - Run
git checkout master
andgit pull origin master
to update your local repository - From master, execute
git tag -a v{{ version }} -m "Releasing version v{{ version }}"
- Push the tag to GitHub by running
git push origin v{{ version }}
- Check that GitHub releases shows the new tag more info on git tags
🎉Questions? Email digitalgov@gsa.gov