-
Notifications
You must be signed in to change notification settings - Fork 0
Release Tracking
Wanted to write up a quick mock-up of how we keep track of release cycles, and where the marker files are so that we can keep track of them.
When you first clone a repository, you'll find a hidden directory at the root level called .deploy. If you go in there and read the instructions, it'll get you started. If you're a developer, you'll probably want to run setup_developer, and if you're configuring a deployment, then setup_deployment makes more sense.
Whichever of these scripts you've run, you'll now notice a new hidden directory at the root of the repository called .local
Inside of this will be...
CurrentVersionSHA - This file contains the SHA of the currently checked out commit. The file itself is not under version control; it is created immediately after checkout. Moreover, there is a .gitignore file in the .local directory (the .gitignore file is under version control) which instructs git to ignore CurrentVersionSHA to make sure that it remains not under version control.
mc_releasetag - This file contains a human readable string meant to demarcate major methods core releases. We don't really have a standard release syntax yet, and I'm not sure if this will be incremented after bug fixes, but we can figure this out as we go.
Mike's mc_Logger.m function (in /matlabScripts) is setup to read in both of these files and write them to any logs that are produced.
Robert's spm8Batch currently doesn't take advantage of either of these files, but I have fixes that will be submitted for pull request soon.
spm8Batch also has its own sort of versioning :
spm8Batch/.spm8BatchVersion - This was originally intended to hold a SHA-ID and is a relic of a time when spm8Batch lived in its own repository, but now this file holds a human-readable tag and is under version control. At present, logs produced by spm8Batch will include this version information. Code is on its way to also include CurrentVersionSHA and mc_releasetag.