Skip to content

Release Tracking

dankessler edited this page Jul 16, 2012 · 6 revisions

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.

Repository-Wide

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

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.

Clone this wiki locally