This outlines the general release process that I (CompSciLauren) do with each new production release. If you are contributing to this project, you don't need to worry about this, but feel free to read on if you're curious. This file exists simply for documentation purposes.
Story board for tracking what's being worked on or planned to be worked on can be found here: https://github.com/users/CompSciLauren/projects/4/views/1
This mainly just tracks whatever I happen to be doing, and not really used for tracking what anyone else is potentially contributing.
- main - production-ready branch
- development - testing branch
- DS-123 - individual story branch naming convention (where
123
is the GitHub Issue being worked on)
This is the process I usually follow.
- Checkout new branch,
main
-->DS-123
// create a new branch - Add the code changes. Commit messages are structured like "DS-123 Add the thing" (message should be accurate high level description of the changes in the commit)
- Merge branch,
DS-123
-->development
// merge into dev branch for testing - Create PR,
DS-123
-->main
// after completed test, can merge into production-ready branch - Merge
main
back intodevelopment
branch // after doing the release is finished
Note: Once a story is merged to main
branch, GitHub Issue is closed, since it will be included in the next release.
Here are the steps for the release. Note the file used for the release is found in the project bin folder, looks like DailyScreenshot 3.0.0.zip
.
- All code changes intended to be released are merged to
main
branch- Includes correct version in manifest.json file. (Follows semver versioning standard)
- GitHub Issues that are addressed by PRs merged to
main
are closed. - Draft a new Nexus Article with release notes
- Publish a New GitHub Release
- Publish new version on Nexus
- Include updating changelog
- Publish Nexus Article with release notes
- Publish new version on the other mod sites (including changelog)
- Respond to any related Nexus bug reports and comments
- Add a comment about the release to SDV Discord in #modded-farmers channel
- Remember to include a picture (can use main cover photo from Nexus site)
- Right click the comment --> Apps --> Publish, to have it be posted in #mod-showcase channel
- Merge
main
back intodevelopment
branch - Delete branches associated with released changes