微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何遵循语义版本控制并保持变更日志约定?

如何解决如何遵循语义版本控制并保持变更日志约定?

Keep a Changelog 是一种广泛使用的约定,它提供了一些有关在通过 VCS 管理的存储库中维护 CHANGELOG.md 文件的准则。

当涉及到一个独特版本的多次提交时,我怀疑它应该如何工作。 由于它的文本描述了“应该对相同类型的更改进行分组”,并且它自己的 repo CHANGELOG.md 文件带来了以下内容

...
## [1.0.0] - 2017-06-20
### Added
- New visual identity by [@tylerfortune8](https://github.com/tylerfortune8).
- Version navigation.
- Links to latest released version in prevIoUs versions.
- "Why keep a changelog?" section.
- "Who needs a changelog?" section.
...

然而,同样的指南遵循 Semmantic Versioning 2.0,它定义了:

...
6. Patch version Z (x.y.Z | x > 0) MUST be incremented if only backwards compatible bug fixes are introduced. A bug fix is defined as an internal change that fixes incorrect behavior.

7. Minor version Y (x.Y.z | x > 0) MUST be incremented if new,backwards compatible functionality is introduced to the public API. It MUST be incremented if any public API functionality is marked as deprecated. It MAY be incremented if substantial new functionality or improvements are introduced within the private code. It MAY include patch level changes. Patch version MUST be reset to 0 when minor version is incremented.
...

所以我理解每个引入错误修复或新功能的提交都应该分别增加 PATCH 或 MInor 版本。

这样对吗?

解决方法

所以我理解每个引入错误修复或新功能的提交都应该分别增加 PATCH 或 MINOR 版本。

这不是真的。可能有许多提交导致版本碰撞。您在发布更改时而不是在提交更改时更改版本。请注意,对于某些工作流,“官方”构建(在 CI/CD 系统上运行)意味着发布。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。