【发布时间】:2011-03-17 19:01:46
【问题描述】:
MSDN 文档指出:
版本号由 2 到 4 组成 组件:主要、次要、构建和 修订。主要和次要 需要组件;构建和 修订组件是可选的,但 构建组件是必需的,如果 修订组件已定义。全部 定义的组件必须是整数 大于或等于 0。
版本号的格式为 如下(显示可选组件 在方括号([ 和 ])中: major.minor[.build[.revision]] 组件按惯例用作 如下:
主要:同名程序集 但不同的主要版本不是 可互换。更高版本 数字可能表示重大重写 落后的产品 不能假设兼容性。
Minor:如果名称和专业 两个程序集的版本号是 相同,但次要版本号 不同,这表明 显着增强与 向后兼容的意图。 这个较高的次要版本号可能 表示产品的点发布 或完全向后兼容的新 产品的版本。
内部版本:内部版本号不同 表示相同的重新编译 资源。不同的内部版本号可能 当处理器、平台、 或编译器更改。
修订:具有相同的程序集 名称、主要和次要版本号 但打算进行不同的修订 可以完全互换。更高的 修订号可能用于 修复一个安全漏洞的构建 以前发布的程序集。
程序集的后续版本 仅因构建或修订而不同 数字被认为是修补程序 旧版本的更新。
我的问题是关于此上下文中“构建”和“修订”这两个术语的含义。
在我看来,一般来说,当源代码发生变化时,我们会“构建”。因此,“build 678”和“build 679”是不同的恰好,因为源在某些方面是不同的——通常是由于签入了一些更改的源。在我看来,.NET 定义使用“修订”的方式与通常使用“构建”的方式相同。
有人在他们的版本控制中使用上述定义吗?如果是这样,你能举出具体的例子来说明你为什么这样做吗?
【问题讨论】:
标签: c# .net build-process versioning