# How to versioning a software?

Earlier, I did some research on how to set version number to a software.
 I would like to share one of the most common formatting convention called Semantic Versioning (SemVer).

SemVer has the following format:

    1.4.3 (12ACF) <- Build number, should correspond with a revision in source control
    
    ^ ^ ^
    
    | | |
    
    | | +--- Minor bugs, spelling mistakes, etc.
    
    | +----- Minor features, major bug fixes, etc.
    
    +------- Major version, UX changes, file format changes, etc.

A common instance of SemVer:

    3.8.5 - 
    Demonstrating the third major release, 
    eighth minor and fifth patch version.
