Cutting a release is a process where new features, bug fixes, etc. are shipped to production. Whether they are features or general fixes, it is important to continuously ship these changes while working on the codebase. This document lists the steps needed to cut a new release.
- First, make sure you are in the correct repository (
AthleteX-DAO/ax_dapp
) and run the command:
git fetch
- Running this command will download commits, files, and refs from a remote repository into your local repository
- Switch to the
develop
branch using the command below:
git checkout develop
- Once on the
develop
branch, make sure to pull the changes using this command:
git pull
- Running this command will download the content from the remote branch and update the local branch to match that conent.
- Once develop branch has the latest changes, we will need to create a branch from develop.
- To create a new branch run the command:
git checkout -b release/x.x.x
Where x.x.x
represents the version number (1.0.0, 1.1.1, 1.2.0, etc.)
- Once you are on the new branch navigate to the
pubspec.yaml
file and update the version number to the new version
- When finished, save the file which will automatically run the
flutter pub get
command or open a new terminal and run the command manually
flutter pub get
- Once that is completed go to github and create a pull request (PR)
- This PR will have the release branch point to
main
branch
-
GitHub actions will be executed and they need to pass all checks
-
Request a review from a developer so they can approve it
-
Once the PR has been approved make sure to merge the branch to main
- Once the PR has been merged in, create another PR that points
main
todevelop
branch
-
Just like with step 6, GitHub actions will be executed and they need to pass all checks
-
Request a review from a developer so they can approve it
-
Once the PR has been approved, merge it in to develop
-
Important note here: Please do not squash and merge the PR in as this will cause issues later on when cutting the release
- Navigate to the JIRA board and go to the
Releases
section and copy the release notes
- Make sure to select
Markdown
when copying to the clipboard
- Go back to GitHub and go to the
Releases
section
- Click on
create a new release
- Create a new release tag with the new version number and name the title with as
Release new_version_number
- In the text box section, paste the release notes that you have copied to the clipboard from step 8
- check the box
Set as a pre-release
- click on the button
Publish release