版本控制的工作方式似乎与以前版本的.Net不同。project.json似乎使用了格式Major.Minor.Patch-特殊的语义版本(根据我在网上看到的)。
发布于 2015-09-08 18:29:15
我不会说版本控制发生了特别大的变化。在版本号x.y.z中,"x“表示”重大更改/破坏更改“,"y”表示“次要添加和修复”,"z“表示”非常小的修正“。这与语义版本控制(SemVer)的状态非常接近。
在project.json-based项目中,只有一个地方可以指定版本,那就是project.json文件本身。这一个版本是SemVer (例如x.y.z-prerel),用于NuGet包版本和程序集版本,以及程序集信息版本。如果在程序集中显式设置了程序集版本或信息版本,则这些版本将得到尊重,而不会被重写。(您可以看到代码这里。)
在运行时,您可以通过反射读取程序集版本(就像往常一样)。
在DNX应用程序中运行时,还可以使用ILibraryManager接口检查正在运行的应用程序。然而,这是一个相当高级的场景。
最后,在project.json文件中,您可以对版本的x.y.z部分进行硬编码,例如1.2.3,但也可以为预发布说明符指定一个*,例如1.2.3-*。如果使用*作为预发布说明符,则可以设置一个名为DNX_BUILD_VERSION的环境变量来指定*的值,例如beta1或rc2-54289。
有一些功能请求被记录下来,以便在外部指定整个版本号时更加灵活。
https://stackoverflow.com/questions/31839790
复制相似问题