C#管理修订号的有效方法

ant*_*009 11 c#

C#2008 SP1

我想知道处理修订号的最佳方法是什么.

我一直认为通常只有3个数字.(主要,次要和错误修复).

但是,我想知道内部版本号和版本号是什么.

例如,在过去我通常只使用3个数字.我有一些非常小的变化或错误修复我会增加第3个数字(错误修复).

因为我是新手.通常在专业领域做什么?

非常感谢任何建议,

在我的AssemblyInfo文件中,我有以下内容:

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version 
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Build and Revision Numbers 
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.2.*")]
[assembly: AssemblyFileVersion("1.0.0.0")]

// 1.0.2 Added feature for detecting if a sound card is installed.
Run Code Online (Sandbox Code Playgroud)

ann*_*ata 10

来自MSDN:

  • 构建:构建号的差异表示对同一源的重新编译.由于处理器,平台或编译器的更改,这是合适的.

  • 版本:具有相同名称,主要版本号和次要版本号但不同版本的程序集应完全可互换.这适用于修复先前发布的组件中的安全漏洞.

Phil Haack 很好地解构了.NET版本系统,但实际上我并不认为他的顾虑真的很重要,因为根据我的经验,.NET/MS版本控制系统只是技术用于调试/支持/跟踪目的,公共和项目管理通常是基于日期或制作 - 营销 - 版本号.

FWIW我所研究的每个.NET项目都由"XY*"管理,即我们喜欢手动控制主要和未成年人,但让系统控制构建和修订.


Ger*_*nck 5

我认为Paul Alexander的答案是正确的,但我想在AssemblyInfo文件中添加以下注释:

如果您使用,1.0.2.*请记住最后一位(替换为*)是一个随机数.所以,如果你1.0.2.今晚构建*`,并且明天早上再次构建它,那么第二个版本的版本号可能比你之前的版本低.

  • 根据MSDN:"默认内部版本号每天递增.默认版本号是随机的." (2认同)

ant*_*009 1

感谢您的所有建议。

我决定使用以下内容。

我的项目的版本号如下:1.0.2.20。1. : 主要更改 0. : 次要更改 2. : 错误修复 20 : Subversion 修订版号

所以我在 assemblyinfo.c 文件中更改了以下内容

[assembly: AssemblyVersion("1.0.2.20")]
Run Code Online (Sandbox Code Playgroud)

关于这个想法的任何建议,我很乐意听到。

非常感谢,

  • 如果有许多不同的程序员在处理相同的代码,那么跟踪错误修复的数量将会很困难。 (2认同)