Semantic versioning uses MAJOR.MINOR.PATCH format. Major versions indicate breaking changes. Minor versions add features without breaking. Patch versions fix bugs. Consistent versioning helps users manage dependencies.
Version Increment Rules
Increment MAJOR for incompatible API changes. Increment MINOR for backward-compatible functionality. Increment PATCH for backward-compatible bug fixes. Pre-release versions indicate unstable releases.
- MAJOR: Breaking changes requiring user updates
- MINOR: New features maintaining backward compatibility
- PATCH: Bug fixes not affecting API
- Use pre-release tags like -alpha, -beta, -rc
- Reset lower numbers when incrementing higher ones
Practical Considerations
Document changes in changelogs. Deprecate before removing in major versions. Consider consumers when deciding version increments. Automate versioning with conventional commits.