Yes I think 'git describe' would be nice since the version numbering is present and human-readable, along with what should be enough of the hash to be unique. -M
_____ From: Bradley Lowekamp [mailto:[email protected]] Sent: Wednesday, April 25, 2012 3:01 PM To: Brad King Cc: M Stauffer -V-; [email protected] Subject: Re: [Insight-developers] incorporating commit info There are a lot of possible ways to go for describing there you are in git. Its not clear what the goal for this case should be. There is also the command "git describe" which produces strings like: v0.4.0b-244-gf74d03b For SimpleITK I have been pondering a more descriptive set of version parts such as that described in PEP 386. http://www.python.org/dev/peps/pep-0386/ Which has the flexible format: N.N[.N]+[{a|b|c|rc}N[.N]+][.postN][.devN] with the hope the dev can describe the next branch, and the post can describe the release branch. For those not on the main branches, a hash would have to be added. But this may be more that you are looking for in describing ITK's revision and status. Brad On Apr 25, 2012, at 2:49 PM, Brad King wrote: On Wed, Apr 25, 2012 at 2:16 PM, M Stauffer -V- <[email protected]> wrote: During compilation, I'd like to be able to incorporate the commit hash and at least a flag as to whether there are any local modifications. The goal is to have this info in the itk binaries for reliably referencing what version of the toolkit was used for a particularly build. I hear this has been discussed before. I'm willing to give it a go. If anyone knows the outline of how to do this that'll really help. I think there are git hooks for getting commit info into a header file, but I haven't looked recently. Also, we'll want to add something similar for our ANTS toolkit, which currently is still using svn. FYI, we do this in CMake's own build: http://cmake.org/gitweb?p=cmake.git;a=blob;f=Source/CMakeVersionSource.c make;hb=v2.8.8 though the implementation pre-dates FindGit.cmake so it does not use find_package(Git) as a new implementation should. It does require a Git command line tool to be found during CMake configuration of the project though. To do that on Windows one should use find_package(Git) and require CMake >= 2.8.2 to reliably find msysGit. -Brad _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: http://www.itk.org/mailman/listinfo/insight-developers ======================================================== Bradley Lowekamp Medical Science and Computing for Office of High Performance Computing and Communications National Library of Medicine [email protected]
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: http://www.itk.org/mailman/listinfo/insight-developers
