Semantic Versioning
Semantic versioning has 3 numbers.

Rule: Every time Major goes up, Minor and Patch are reset to zero.
Every time Minor goes up, patch is reset to zero.
About Minor​
Each Minor that goes up is an extra functionality that the software received.
Every extra functionality generates its errors and bugs that should be fixed and also versioned using Patch.
About Patch​
Patch is the number of bugs that extra functionality generated and were being fixed.
If bugs are finished and you're going to move to the next functionality, increase minor and reset patch.
I'm already on version 1.13.4 and I found a bug from version 1.12.X, no problem, fix it and move to 1.13.5, simple as that.
About Major​
Major is changed whenever a large change or breaking change with the API happens.
For major, if the software doesn't have a stable version it has to start with 0 and the beginning of everything is 0.1.0