Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Semantic Versioning with GitVersion - Take 2

683 views

Published on

On Thursday 22nd October 2015, I presented a talk at Aberdeen Developers .Net User Group entitled "Semantic Versioning with GitVersion"

Published in: Technology
  • Be the first to comment

Semantic Versioning with GitVersion - Take 2

  1. 1. Semantic Versioning with GitVersion Gary Ewan Park Email: gep13@gep13.co.uk Twitter: @gep13 Web: http://www.gep13.co.uk
  2. 2. Agenda • What is Semantic Versioning? • What is GitVersion? • Why would I want to use GitVersion? • How do I get started with GitVersion? • Demo
  3. 3. What is Semantic Versioning?
  4. 4. A Definition… “…simple set of rules and requirements that dictate how version numbers are assigned and incremented. These rules are based on but not necessarily limited to pre-existing widespread common practices in use in both closed and open-source software.” Reference  http://semver.org
  5. 5. The Rules Given a version number MAJOR.MINOR.PATCH, increment the: • MAJOR version when you make incompatible API changes • MINOR version when you add functionality in a backwards- compatible manner • PATCH version when you make backwards-compatible bug fixes Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.
  6. 6. Example Semantic Version Numbers • 0.1.0 • 1.0.0 • 0.3.13 • 0.2.0-unstable3 • 0.2.0-unstable.3+Branch.develop.Sha.e6eb071cd30974b80d7e237b85e7729a1d791e1e
  7. 7. What is GitVersion?
  8. 8. A Definition… “GitVersion is a tool to help you achieve Semantic Versioning on your project.” Reference  http://gitversion.readthedocs.org/en/latest/  https://github.com/GitTools/GitVersion
  9. 9. Why would I want to use GitVersion?
  10. 10. Existing Strategies ?
  11. 11. How do I get started with GitVersion?
  12. 12. Simples!  • Install from Chocolatey: • Use the NuGet Command Line Package • Use the NuGet MsBuild Task • Use the Ruby Gem
  13. 13. Example GitVersion Output
  14. 14. Build Server Support
  15. 15. Demo
  16. 16. Questions? Feel free to get in touch Email: gep13@gep13.co.uk Twitter: @gep13 Web: http://www.gep13.co.uk
  17. 17. Resources • GitVersion Documentation o http://gitversion.readthedocs.org/en/latest/ • .Net Rocks Episode with Jake Ginnivan o https://www.dotnetrocks.com/default.aspx?showNum=1178 • Git Branching Strategies o https://www.atlassian.com/git/tutorials/comparing-workflows • GitFlow o http://nvie.com/posts/a-successful-git-branching-model/

×