Nuget包版本号和我们软件应用版本号一样,不过因为稳定性等的考虑,组件版本有更高的要求。预发布版本使用频率更高

版本号介绍,详见我朋友胡承老司机的博客:Nuget包的版本规范 (qq.com)

我这里加一个preview版本,在我这团队用的最多。按排序的话:

  1. Alpha 版本:-alpha 后缀,是最初的预发布版本,通常是一个不完整的、包含很多缺陷和未经充分测试的版本。

  2. Beta 版本:-beta 后缀,是 Alpha 版本之后的一系列预发布版本,已经包含了较多的新特性和改进,但仍然存在某些缺陷和未经充分测试的功能。

  3. Preview 版本:-preview 后缀,是在 RC 版本之前发布的一个预览版本,通常包含所有计划中的新特性和功能,并且已经通过了充分的内部和外部测试,但仍可能存在一些问题和未知的 bug。它的发布旨在让用户能够提前体验和了解新的功能和特性。

  4. RC 版本:-rc 后缀,是 Release Candidate(候选版本)的缩写,是在 Beta 版本之后发布的一个最终测试版本,通常在该版本中不再添加新的功能和特性,主要是针对已知的 bug 进行修复和优化,这个版本可能会成为最终版本。

比如1.0.1-alpha.2,表示1.0.1有个开发联调版本alpha,alpha版本下面有构建号次数2。

也有开发在构建号后添加预览版本:1.0.1.2-alpha,而VS也是支持的。比如:

引用微软的Nuget.Versioning包对Nuget版本进行排序,输出一个Demo看看

 1     var list = new List<string>();
2 list.Add("1.0.1");
3 list.Add("1.0.2");
4 list.Add("1.0.2.1");
5 list.Add("1.0.2-preview");
6 list.Add("1.0.1.2-preview1");
7 list.Add("1.0.1.24-preview1");
8 list.Add("1.0.1-preview1.2");
9 list.Add("1.0.1-preview.2");
10 list.Add("1.0.1-preview1");
11 list.Add("1.0.1-preview2");
12 var nugetVersions = list.Select(i => new NuGetVersion(i)).ToList();
13 nugetVersions.Sort();
14 Debug.WriteLine(string.Join("\r\n", nugetVersions));

输出结果:

从这个demo可以看出,Nuget版本规则对预览版本号俩种情况都是完全支持的。

C# Nuget版本号排序的更多相关文章

  1. list中的对象或者map中的版本号排序 version排序

    经常会用到版本号排序,直接把他封装成一个工具用起来比较方便. List<A> aList = new ArrayList<>(); ...aList 赋值 ... Collec ...

  2. MySQL 版本号排序

    1.业务背景 版本检查接口返回版本号排序时出现如下图所示问题 普通的查询按数字值逐级比较,导致版本号高的排在了后面,这样版本检查根据版本号排序倒排取出来的不是最新的版本号,本文就此问题查询了诸多方法, ...

  3. 获取 Nuget 版本号

    本文告诉大家通过命令行获取 Nuget 的版本号 在 Nuget 中没有 -version 和 -v 和 --version 等写法,只需要直接输入 nuget 在第一行就会显示版本号 nuget N ...

  4. 关于oracle数据库中获取版本号类数据最大值的sql

    目前还在高度加班中,但是本次内容怕自己忘记,好不容易解决的,所以赶紧先随便抽点时间记录下,也没来得及考虑效率什么的优化问题,免得以后忘记了. 测试库结构如下: 表名为 testtab 字段名为test ...

  5. 165 Compare Version Numbers 比较版本号

    比较两个版本号 version1 和 version2.如果 version1 大于 version2 返回 1,如果 version1 小于 version2 返回 -1, 除此以外 返回 0.您可 ...

  6. 介绍了ASP。净样板

    下载sample application (or see on Github) 内容 问题介绍什么是ASP.NET样板文件NET Boilerplate不是开始创建空的web应用程序从模板域层 关于名 ...

  7. 分享一个CQRS/ES架构中基于写文件的EventStore的设计思路

    最近打算用C#实现一个基于文件的EventStore. 什么是EventStore 关于什么是EventStore,如果还不清楚的朋友可以去了解下CQRS/Event Sourcing这种架构,我博客 ...

  8. Entity Framework7 入门之全功能.NET版本下使用EF7(含源码)另附数据迁移常见错误处理

    Entity Framework7 入门之全功能.NET(Console, WinForms, WPF等)使用EF7 昨天,我们介绍了EF的新特性和开发计划,如果你还不了解,请移步 Entity Fr ...

  9. shell学习笔记

    shell学习笔记 .查看/etc/shells,看看有几个可用的Shell . 曾经用过的命令存在.bash_history中,但是~/.bash_history记录的是前一次登录前记录的所有指令, ...

随机推荐

  1. Float浮动、 CSS定位(position)

    Float浮动. CSS定位(position)1.CSS定位机制(1)普通流(标准流)-默认状态,元素自动从左往右,从上往下的排列(2)浮动-会使元素向左或向右移动,只能左右,不能上下-浮动元素碰到 ...

  2. 三、Applied visual design(应用视觉设计)

    一.文本属性整理 <style> h2 { /* 文字对齐属性 text-align */ /* center:居中,left,right:居左居右,justify:文字拉伸铺满一行 */ ...

  3. 关于安装Wind金融终端后,启动QT后频繁跳出WDF.dll文件注册成功窗口的问题

    安装Wind金融终端后,启动QT后频繁跳出WDF.dll文件注册成功窗口的信息. 经过排查后发现,主要问题出在系统环境变量上. 安装了wind金融终端后,用户系统环境变量PATH里多了两个wind相关 ...

  4. CF1732A Bestie

    思路 观察数据\(n \le 20\) 直接暴力. 我们直接算所有数的\(GCD\),然后枚举\(1\)~\(n\)的每一个数要不要选,然后选的话,就把原来的\(GCD\)和当前枚举的数\(GCD\) ...

  5. Oracle-展示的时候出现????乱码

    Oracle-展示的时候出现????乱码 配置环境变量: NLS_LANG SIMPLIFIED CHINESE_CHINA.ZHS16GBK

  6. syn flood

    from scapy.all import * import random # 生成随机的IP def randomIP(): ip = ".".join(map(str, (ra ...

  7. discuz论坛或门户下载的图片无法显示?

    discuz论坛或门户下载的图片无法显示? 使用某些插件或者软件(例如火车头采集器,简数采集工具等)的图片下载功能,发现下载成功了后台也有但是前台无法显示,捣鼓了一轮最终才发现是路径的问题. disc ...

  8. 使用ActiveMQ中遇到的端口占用问题

    原Linux虚拟机中安装了ActiveMQ,EMQX.后期使用中主要使用EMQX来实现消息服务,停止了ActiveMQ.但是虚拟机挂起之后,长时间未再使用.近期由于有使用ActiveMQ的需要,而临时 ...

  9. 使用Vue脚手架

    关于不同版本的Vue: vue.js与vue.runtime.xxx.js的区别: (1) vue.js是完整版的Vue,包含: 核心功能+模板解析器 (2) vue.runtime.xxx.js是运 ...

  10. Python 爬虫入门(一)环境搭建

    一.梳理图 Python是个啥.为啥学习.作用域,随便查一下什么信息都有 本人目前是Java开发,在学习爬虫时发现在爬虫方面,Python比Java简单.方便.实用很多,不是不能做,只是单纯的适合 在 ...