I have a question regarding assembly/file versioning in Class Library project in Visual Studio (C#).
We have 4 numbers (example: 1.0.0.0) and according to:
https://msdn.microsoft.com/en-us/library/system.reflection.assemblyversionattribute.aspx
The four numbers are in this format:
[major version].[minor version].[build number].[revision]
My question is, how exactly do we determine "Major", "Minor", "Build Number", and "Revision"? Are "Major" and "Minor" more subjective while "Build Number" and "Revision" more objective (as we can actually count them)?
Are there any actual "rules" regarding that?
I am rather confused because according to this thread: Best Practice: Software Versioning
basically it is a matter of preference. Can anybody clarify or having proper "rules" (with example will be best) regarding this?