Skip to content

Latest commit

 

History

History
100 lines (65 loc) · 2.78 KB

RELEASE.md

File metadata and controls

100 lines (65 loc) · 2.78 KB

Release

When you are ready to release a new version, follow these steps.

These instructions assume that you want to release what is at the top of the master branch. To release something without including the most recent commits to master, creating a dedicated branch that includes the content to be released along with the relevant changelog updates, and create the tag to point to that branch, can be considered as an alternative.

  1. Bump up the VERSION

  2. Update CHANGELOG.md

    • Replace the [Unreleased] with the version number.
    • Add current date to version number line.
    • Add a new [Unreleased] version.
    • Add a git diff link to the end of the file, and update the unreleased diff link.
  3. Update UPGRADE.md

    • See if there are any upgrade notes. If not, you can move to next step.
    • Replace the [Unreleased] with the correct version number.
    • Add a new [Unreleased] version
  4. Commit the changes

  5. Add a new tag

    git tag -a v1.2.3 -m v1.2.3
  6. Update latest tag

    git push origin :refs/tags/latest
    git tag -f -a latest -m latest
  7. Push the tags to the private Go repository:

    git push origin refs/tags/v1.2.3
    git push -f origin refs/tags/latest
  8. Make sure you have a Git remote for the public Go repository:

    $ git remote -v
    origin    git@github.com:sharetribe/go.git (fetch)
    origin    git@github.com:sharetribe/go.git (push)
    public    git@github.com:sharetribe/sharetribe.git (fetch)
    public    git@github.com:sharetribe/sharetribe.git (push)

    If not, add one:

    git remote add public git@github.com:sharetribe/sharetribe.git
  9. Push the tags to the public Go repository:

    git push public refs/tags/v1.2.3
    git push -f public refs/tags/latest
  10. Go to Github releases and draft a new release

    Use the following content:

    Tag version: <the newly created tag>

    Release title: <version number>

    Describe this release:

    <copy the content from the [CHANGELOG.md](CHANGELOG.md)>
    <copy the content from the [UPGRADE.md](UPGRADE.md)>

    Here's a full example:

    Tag version: v5.0.0

    Release title: v5.0.0

    Describe this release:

    ### Changed
    
    - Rails upgraded from 3.2 to 4.0
    
    ## Upgrade from 4.6.0 to 5.0.0
    
    After you have deployed the new version you need to clear Rails cache by running to following command in your production application Rails console:
  11. Announce the new version at the Community Forum