This page contains information about project management tasks. The target audience is senior developers (and above).
Before making a release, please check the following prerequisites:
11
installed (Not other major release versions such as JDK 12
or JDK 13
).JAVA_HOME
environment variable is correctly set to your JDK installation directory. You can refer to the JDK Installation Guide.master
branch into both the local and upstream release
branch according to the following steps:
master
branch to be exactly the same as the upstream master
branch.release
branch, and merge the master
branch into it with git merge master --no-ff
(no fast forward to keep the commit history for releases).release
branch directly to the upstream release
branch (make sure you have the push access).To make a release for RepoSense on GitHub, please follow the Creating a release
section in the GitHub Docs.
Take note of the following when making the release according to the above guide:
MAJOR.MINOR
as the version number when the release includes new features and/or major changes.MAJOR.MINOR.PATCH
as the version number when the release only includes bug fixes and/or minor changes.rc
to the version number to indicate that the release is a pre-release that is not ready to be used in production.RepoSense vxxx
where xxx
is the version number. Enter the release description by referring to the previous RepoSense releases.RepoSense.jar
file and attach it to the release.
release
branch.gradlew --version
to check that the JDK version is 11.gradlew shadowJar
, and the Jar file will be generated at {buildDir}/jar/
.After making the release, please also remember to deploy the production website using the deploy guide.
We have two versions of the website:
master
branchmaster
branch is updatedThe production website differs from the dev website in some ways, e.g.,
CNAME
file (to indicate that it is the target destination for the reposense.org
domain name)MarkBind mainly manages these variations via the site.config
file. That is why the site.config
file in the release
branch is slightly different from the one in the master
branch.
After each release, do the following steps to deploy the production website:
release
branchcd docs
markbind build
markbind deploy
(make sure you have the push access to https://github.com/reposense/reposense.github.io)If critical bugs are found in the release, take the following steps to hot patch it:
release
branch.release
branch to the upstream release
branch.release
branch according to the above guide.release
branch back into the master
branch by creating a separate pull request.