什么使用作为初始版本?
我通常用1.0.0版本开始我的项目。 只要我有一些东西在一起,我释放它作为1.0.0和1.1.0继续。
然而,这导致可用,但不完全function完整的版本1.0.0我写的大多数东西。 然后我添加function,并得到一个体面的版本1.6.0左右。 许多项目从版本0.1.0开始,这将与我的1.0.0一样可用。
你会build议做什么? 从1.0.0或0.1.0开始?
最后一个数字仅仅是针对bugfix版本的。 你可以认为我的1.0.0为1.0和0.1.0,因为0.1对你来说更容易。
我的版本是由设置驱动的。 我希望它取代旧版本,所以我不断增加跳跃,这对我有意义。
然而,有时候版本控制是由客户驱动的,特别是如果你向公众发布代码的话。
如果是你的电话,那么做一些最适合你的工作。 我在1.0之前的版本中遇到过一些问题,所以我从此开始。
语义版本2.0.0标准说:
最简单的做法是以0.1.0开始您的初始开发版本,然后为每个后续版本增加次要版本。
可以从0.3.0直到1.0.0。 在0.23.0也是完全可以的。 从0.4.0开始是不可取的,因为它表明已经有以前发布的版本。
此外,请注意, 0.yz
被放在一边,以便进行快速迭代,所以最初的开发(以及大量的重大更改)不会让您感觉像142.6.0这样的愚蠢。 不要碰撞主要版本,而是在每次重大更改之前更新次要版本,直到您释放1.0.0:
主版本零(0.yz)是初始开发。 任何事情随时都可能改变。 公共API不应该被认为是稳定的。
当我得到第一个可用的,但没有function完整的版本时,我通常会尝试判断function完整版本有多远,例如,如果我的第一个可用function是33%function完成,则使版本号为0.3.0;类似。 然后当我走向function完成相应的版本以类似的方式获得给定的数字。
但是一旦你过去了,function完整的版本需要改变
我认为这里有不同的因素。 版本号的心理/市场影响(版本号经常增加=>更多$$$,人们不想购买0.99testing版等)必须被考虑在内。 在一个庞大的团队中工作时,“逻辑”版本号码可以提供帮助。
而且我喜欢用不稳定版本的奇数编号的linux方式,以及稳定编号的偶数编号。
版本号完全取决于你。 做一些有意义的事情 ,保持一致。 没有人说你必须从0开始,或者是0.0,或者1.0,或者是1.1。
伟大的程序员实际上已经使用版本编号系统作为本地的笑话。 示例(Wikipedia):
从版本3开始,TeX使用了一个特殊的版本编号系统,在小数末尾加上一个额外的数字表示更新,这样版本号渐近地接近π。 这是TeX现在非常稳定的事实的一个反映,并且预计只有微小的更新。 当前版本的TeX是3.1415926; 它最后在2008年3月更新
对于METAFONT:
Metafont有一个类似于TeX的版本控制系统,在这个系统中,每个版本的数字渐近于e。
最后,还没有一个版本号,但同样有趣的是,谷歌首次公开募股(IPO)提交给美国证券交易委员会,筹集2,718,281,828美元(注意到约2.718 281 828)。
我的观点是:不要觉得你需要跟随人群。 保持创造性和一致性。
当为npm
包select版本号时,请注意,在v1.0.0以下, semver范围将不起作用。 那是,
"dependencies": { "my-package": "^0.5" }
相当于
"dependencies": { "my-package": "0.5" }
如果你想能够使用semver范围,或者你想让其他人使用它们,你可能需要从1.0.0开始
通常,版本控制对程序员有一定的意义。 增加主号码可能表明有大的变化,阻止向后兼容。 版本号中的其他数字可能表示更小的function增强或错误修复。
如果你担心0.6.5版本有一个不完整的环,那么你可能想要在1.0版本之下销售它。 您的营销版本号不需要与您的内部版本号相匹配。 Windows 7的版本号是6.1。
我个人的偏好是从0.1.0开始,然后从那里开始。
取决于该项目。 对于简单的命令行工具,我通常在0.9 [.0]左右开始,因为我只考虑在完成时释放或打包它们(或者准备进行betatesting,无论如何)。更复杂的项目大约在0.1 [.0]和有些甚至没有看到1.0。 我认为1.0是一个发布版本(或者至less是一个在本地testing过的testing版本或候选版本)并相应地进行规划
通过团队项目,谁把第一个版本标签决定:)。
版本号应该像Arrieta之前正确评论的那样对你有意义。
也许下面的东西是这样的:First#是市长发布,Second#是同一个市长版本添加了一些function,Third#是相同的市长发布,具有相同的function,但具有固定的错误或添加很less(但足够重要)的变化。
1.3.2 => 1st Release,更多的function和一些bug修复。
但是,对于最终用户,一些用于大数字的最终版本。
例如:Corel 8,用于8.0.0,8.0.1,8.2.2等Corel 9,用于9.0.0 …等。
主要是关于营销策略,比如:Corel X5,而不是Corel 15.0.2。
我会说,这取决于版本号是为你还是为客户端。
从0.0.0开始并从那里继续。
从1.1.1开始,从那里开始。