Major、Minor、Build Number及Revision 版本号注解含义

本文探讨如何在编程实践中管理版本号,如1.0.1879.26471,重点介绍如何通过编程实现每次编译后版本号自动递增,并分享版本控制的最佳实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版本号

版本号由二至四个部分组成:主版本号、次版本号、内部版本号和修订号。

主版本号和次版本号两个部分为必选,内部版本号和修订号两个部分为可选。只有在未定义内部版本号部分时,修订号部分才为可选。所有定义的组件必须是大于或等于 0 的十进制整数。元数据将主版本号、次版本号、内部版本号和修订号组件限制为 MaxValue 最大值 - 1。

版本号的格式如下所示。可选组件显示在方括号(“[”和“]”)中:

主版本号.次版本号[.内部版本号[.修订号]]

应根据下面的约定使用这些部分:

  • Major:具有相同名称但不同主版本号的程序集不可互换。例如,这适用于对产品的大量重写,这些重写使得无法实现向后兼容性。
  • Minor:如果两个程序集的名称和主版本号相同,而次版本号不同,这指示显著增强,但照顾到了向后兼容性。例如,这适用于产品的修正版或完全向后兼容的新版本。
  • Build:内部版本号的不同表示对相同源所作的重新编译。这适合于更改处理器、平台或编译器的情况。
  • Revision:名称、主版本号和次版本号都相同但修订号不同的程序集应是完全可互换的。这适用于修复以前发布的程序集中的安全漏洞。
  • 程序集的只有内部版本号或修订号不同的后续版本被认为是对先前版本的“快速修复工程”(QFE) 更新。如有必要,可以通过更改配置中的版本策略使内部版本号和修订号生效。

那么在建工程的时候 AssemblyInfo1.vb 默认应该为 <Assembly: AssemblyVersion("1.0.*")>

编译后看 dll 的版本信息,可以看到1.0.1879.26471 ,前两位是自己设置的,第三位1879也知道是从2000.01.01日到现在时间的天数,那么最后一位 26471 是动态控制版本号

如果想动态控制版本号,如编译一次就让最后一位让它每次加一,或者大家对这种版本的控制有更好的想法,可以提出来共同学习

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值