Steps detailing how to publish a new release after the development on the
develop branch is completed. We follow the git-flow branching
model (also described here).
# Checkout from develop branch
git checkout -b <branch>
# Push and track feature branch
git push --set-upstream origin <branch>
# Alias
git newbr <branch>
# Switch to develop
git co develop
# Merge into develop
git merge --no-ff <branch>
# Push changes
git push origin develop
# Delete remote branch (optional)
git push origin --delete <branch>
# Delete local branch (optional)
git branch -d <branch>
# Alias
git mergebr <branch>
-
Create a new
condaenvironment from scratch with the latest versions of all packages. Download thedevelopversion and run in this new environment to see that everything works as expected. THIS IS IMPORTANT -
Save the version of the required packages for later.
-
Create
releasebranch locallygit co -b release-<version> developOptional Update
.first_runfile if it needs to be modified. Remove it from--skip-worktreeso that it will be tracked. Make any necessary changes and commit.# Track again git update-index --no-skip-worktree packages/.first_run # Make changes and commit. ac --> alias for 'add + commit' git ac 'update first_run file' -
Add & commit the changes made since latest release to
CHANGELOG.mdfile. Remember to link the issues with markdown.git ac 'update changelog' -
Add & commit version number
<version>to_version.pyfile. This is the last commit in the branch before the final release, check carefully.git ac 'Bumped version number to <version>' -
If some last minute change is necessary, do it now.
-
Merge
releasebranch intomasterand push.git co master git merge --no-ff release-<version> git push -
Tag this new release
vx.x.xand push new tag.git tag vx.x.x git push --tags -
Merge
releasebranch intodevelop, and delete.git co develop git merge --no-ff release-<version> git push git branch -d release-<version> -
Add
devto the version number in_version.pyfile. This is the first commit in the newdevelopbranch.git acp 'mark branch as develop'Optional Ignore
.first_runfile again.git update-index --skip-worktree packages/.first_run
Link draft release with new tag in Github and publish (https://github.com/asteca/asteca/releases).
New version is now fully released.
-
Add new published version to
index.htmlfile in: -
Push above changes made to the site.
git acp 'release vx.x.x' -
Add new version to
conf.pyfile in docs. -
Make any necessary changes/additions to the docs.
-
Push above changes made to the docs.
git acp 'release vx.x.x'