这是我的做法(已编辑):
我不会将文档(包括 RDD)与实现代码分开。我总是从 1.0.0 开始我的软件,并且通常从 RDD 文档开始,该文档可能有也可能没有附带代码,具体取决于实现的复杂性。
在有代码之前,我根本不会开始修改版本号。如果您的 RDD 是规范并且有其他人从您的文档中实现,则此方法可能不起作用。在这种情况下,您可以考虑将文档放在自己的存储库中并维护自己的版本历史,这与实现软件的版本历史是分开的。如果你分别维护它们,你的 RDD 版本规则应该遵循与软件版本规则相同的原则。破坏.功能.修复。
否则,如果您不打算为您的 RDD 维护单独的版本控制,那么在任何代码存在之前,我认为从 1.0.0 开始通常是可以的,并且在您开始推送实现代码之前根本不要增加它。我会将任何未实现的文档放在一个docs/RDD
文件夹或类似文件夹中,以将其与已实现代码的文档区分开来。
我的原始答案适用于 CODE 版本,而不是文档版本:
- “自述文件中记录的 API 中的重大更改是否会被视为重大更改?” - 是的,一点没错。
- “我的第一个版本应该是什么?” -- 从 1.0.0 开始。版本号是针对软件的,而不是针对人的。每个重大更改都应与主要版本号的更改进行沟通。
- “我应该在第一次代码提交时碰到哪一部分?” -- 你的第一个代码提交应该是@1.0.0。
- “我应该使用预发布标签吗?” - 您应该将推荐的稳定版本标记为最新。如果您有一个需要更广泛测试但尚未准备好用于一般生产用途的实验性候选版本,请使用预发布标签。
您可以在“软件版本已损坏”中阅读有关我的软件版本建议的更多信息。