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; co --> alias for checkout
git co -b <branch>
# Push and track feature branch
git push --set-upstream origin <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>
- Update the CMD photometric systems supported via the
CMDphotsysts
script:../packages/inp/CMD_systs.dat
- Download the
develop
version into a newconda
environment, and run to see that everything works as expected. THIS IS IMPORTANT
-
Create
release
branch locallygit co -b release-<version> develop
Optional Update
.first_run
file if it needs to be modified. Remove it from--skip-worktree
so 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.md
file. Remember to link the issues with markdown.git ac 'update changelog'
-
Add & commit version number
<version>
to_version.py
file. 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
release
branch intomaster
and push.git co master git merge --no-ff release-<version> git push
-
Tag this new release
vx.x.x
and push new tag.git tag vx.x.x git push --tags
-
Merge
release
branch intodevelop
, and delete.git co develop git merge --no-ff release-<version> git push git branch -d release-<version>
-
Add
dev
to the version number in_version.py
file. This is the first commit in the newdevelop
branch.git acp 'mark branch as develop'
Optional Ignore
.first_run
file 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.html
file in: -
Push above changes made to the site.
git acp 'release vx.x.x'
-
Add new version to
conf.py
file in docs. -
Make any necessary changes/additions to the docs.
-
Push above changes made to the docs.
git acp 'release vx.x.x'