语义版本号(Semantic Versioning) 发布于 2018-04-12 12:20 更新于 2018 ---- 传统的版本号 如果你只是知道传统版本号由四个部分组成,那么建议去官方文档 Assembly Versioning 了解一下这种版本号的定义。 如果希望自动化地在项目中生成语义版本号,可阅读我的另一篇博客 使用 GitVersion 在编译或持续构建时自动使用语义版本号(Semantic Versioning)。 ---- 参考资料 Semantic Versioning 2.0.0 - Semantic Versioning Semantic Versioning & auto-incremented NuGet in a continuous delivery world: part 3 – Microsoft DevOps Blog Supporting Semantic Versioning 2.0.0
WebDAV(Web-based Distributed Authoring and Versioning)是一种基于 HTTP 协议的扩展,用于在远程服务器上进行分布式创作和版本控制。
Contract(3):WCF Data Contract对Collection & Dictionary的支持 [原创]谈谈WCF中的Data Contract(4):WCF Data Contract Versioning
序 本文主要解读下java10的Time-Based Release Versioning 实例 java9版本 java -version java version "9" Java(TM) SE Runtime mode) 这里显示的是2018-09-20发布的JDK11的LTS版本 小结 本文主要是粗略解读了下新的版本命名机制,如要深入研究,可以查看JEP 322: Time-Based Release Versioning doc JEP 322: Time-Based Release Versioning
使用 GitVersion 在编译或持续构建时自动使用语义版本号(Semantic Versioning) 发布于 2018-04-12 13:45 这是趋势,从微软的博客 Versioning NuGet packages in a continuous delivery world 三部曲中可以看出,从 NuGet 4.3.0 以及 Visual Please select yours: 中文 English 安装 GitVersionTask 微软工程师在博客 Versioning NuGet packages in a continuous NuGet packages in a continuous delivery world: part 1 – Microsoft DevOps Blog Versioning NuGet packages - Stack Overflow GitTools/GitVersion: Easy Semantic Versioning (http://semver.org) for projects using
执行以下命令,在MySQL CLI中,在一个新的连接上执行,不需要做特别的准备(并且要特别注意执行时间):
import URLPathVersioning class UserView(APIView): versioning_class = URLPathVersioning def ":"rest_framework.versioning.URLPathVersioning", # "DEFAULT_VERSION":'v1', #默认的版本 # version=xxx # } #全局 REST_FRAMEWORK = { "DEFAULT_VERSIONING_CLASS":"rest_framework.versioning.URLPathVersioning Returns a two-tuple of (version, versioning_scheme) """ if self.versioning_class is None (request, *args, **kwargs), scheme) (4)versioning_class ?
[-] 297 -> 298... 2018-02-04 20:26:52.663 21752 INFO migrate.versioning.api [-] done 2018-02-04 20: 26:52.664 21752 INFO migrate.versioning.api [-] 298 -> 299... 2018-02-04 20:26:52.740 21752 INFO migrate.versioning.api [-] done 2018-02-04 20:26:52.740 21752 INFO migrate.versioning.api [-] 299 -> 300... 2018-02-04 20: 26:52.931 21752 INFO migrate.versioning.api [-] done 2018-02-04 20:26:52.931 21752 INFO migrate.versioning.api 26:53.218 21752 INFO migrate.versioning.api [-] 301 -> 302... 2018-02-04 20:26:53.230 21752 INFO migrate.versioning.api
/technotes/guides/versioning/spec/versioning2.html#wp90779"> * Java Product Versioning /technotes/guides/versioning/spec/versioning2.html#wp90779"> * Java Product Versioning /technotes/guides/versioning/spec/versioning2.html#wp90779"> * Java Product Versioning /technotes/guides/versioning/spec/versioning2.html#wp90779"> * Java Product Versioning /technotes/guides/versioning/spec/versioning2.html#wp90779"> * Java Product Versioning
'DEFAULT_VERSION': None, 'ALLOWED_VERSIONS': None, 'VERSION_PARAM': 'version', } DEFAULT_VERSIONING_CLASS :指定版本控制的类,譬如:'rest_framework.versioning.NamespaceVersioning',有多种方式。 2.settings REST_FRAMEWORK = { 'DEFAULT_VERSIONING_CLASS': 'rest_framework.versioning.AcceptHeaderVersioning ': 'rest_framework.versioning.URLPathVersioning', 'DEFAULT_VERSION': 'v1', 'ALLOWED_VERSIONS ': 'rest_framework.versioning.NamespaceVersioning', 'DEFAULT_VERSION': 'v1', 'ALLOWED_VERSIONS
) # 反向生成URL reverse_url = request.versioning_scheme.reverse('test', request=request) 全局使用 REST_FRAMEWORK = { 'DEFAULT_VERSIONING_CLASS':"rest_framework.versioning.URLPathVersioning", ':"rest_framework.versioning.HostNameVersioning" #如果加上这个配置就不用versioning_class = QueryParameterVersioning ':"rest_framework.versioning.HostNameVersioning" 26 'DEFAULT_VERSIONING_CLASS':"rest_framework.versioning.URLPathVersioning 6 from rest_framework.versioning import URLPathVersioning #支持版本 7 from rest_framework.versioning import
'DEFAULT_VERSIONING_CLASS':'rest_framework.versioning.URLPathVersioning', 'ALLOWED_VERSIONS 获取版本 request.version 获取版本 局部配置 除非明确设置,否则DEFAULT_VERSIONING_CLASS值为None.此例中request.version将会始终返回None 如果您确实需要这样做,请使用versioning_class属性。 from rest_framework.versioning import QueryParameterVersioning class Course(APIView): versioning_class
From the Microsoft blog Versioning NuGet packages in a continuous delivery world we could find that semantic versioning is the trend. This article will refer to the semantic versioning from the perspective of continuous integration, telling tools named GitVersion on his blog Versioning NuGet packages in a continuous delivery world: part 3 - Stack Overflow GitTools/GitVersion: Easy Semantic Versioning (http://semver.org) for projects using
参考 语义化版本 2.0.0 | Semantic Versioning: https://semver.org/lang/zh-CN/ GitHub - semver/semver: Semantic Versioning Specification: https://github.com/semver/semver 1.2. 参考 日历化版本 / Calendar Versioning — CalVer: https://calver.org/overview_zhcn.html 2. 标识符 2.1. 参考汇总 spring 版本号命名 https://mp.weixin.qq.com/s/ZoUG9h1TndW2QpnPyGeIQA 语义化版本 2.0.0 | Semantic Versioning /semver/semver 日历化版本 / Calendar Versioning — CalVer: https://calver.org/overview_zhcn.html What is the
how-do-you-compare-two-version-strings-in-java 给出了最简单的现成的方案:使用org.apache.maven:maven-artifact:3.2.5库中的 org.apache.maven.artifact.versioning.DefaultArtifactVersion ,比较版本号就变得很简单: import org.apache.maven.artifact.versioning.DefaultArtifactVersion; DefaultArtifactVersion ) { System.out.println("Sorry, your version is unsupported"); } 下面是我基于org.apache.maven.artifact.versioning.DefaultArtifactVersion 检查数据库类型和版本号的方法: import static com.google.common.base.Preconditions.checkState; import org.apache.maven.artifact.versioning.DefaultArtifactVersion
在Asp.Net WebApi中添加版本控制,同时在swagger中按版本显示接口 ---- 引用版本控制包 <package id="Microsoft.AspNet.WebApi.<em>Versioning</em> " version="4.0.0" targetFramework="net46" /> <package id="Microsoft.AspNet.WebApi.<em>Versioning</em>.ApiExplorer options.GroupNameFormat = "'v'VVV"; // note: this option is only necessary when versioning var description = "A sample application with Swagger, Swashbuckle, and API versioning 选择api版本后swagger ui页面没有刷新,还是显示上一个版本,选择版本后需要失去焦点再回车,不然会弹出选择框继续选择 ---- 参考资料 aspnet-api-versioning-SwaggerWebApiSample
gems安装 sudo gem install fastlane fastlane安装成功后,安装两个插件,用于版本号管理和打包成功后上传到对应的第三方平台 // 添加fastlane插件 // versioning 使用参考,https://github.com/SiarheiFedartsou/fastlane-plugin-versioning,用于版本号获取和修改 // firim是fir平台插件 fastlane add_plugin versioning fastlane add_plugin fir_cli # https://github.com/FIRHQ/fastlane-plugin-fir_cli build_configuration_name: 'Release') # 使用参考GitHub链接,https://github.com/SiarheiFedartsou/fastlane-plugin-versioning
root@controller yum.repos.d]# tail /var/log/glance/api.log 2018-02-04 19:42:34.439 20807 INFO migrate.versioning.api glance.db.sqlalchemy.migrate_repo.schema [-] creating table artifact_dependencies 2018-02-04 19:42:35.542 20807 INFO migrate.versioning.api [-] done 2018-02-04 19:42:35.542 20807 INFO migrate.versioning.api [-] 41 -> 42... 2018-02-04 19:42 :36.271 20807 INFO migrate.versioning.api [-] done [root@controller yum.repos.d]# systemctl enable openstack-glance-api.service
在 api 项目中使用 添加对新建类库的引用,并在 webapi 项目中启用版本管理需要为输出项目添加 Nuget 包:Microsoft.AspNetCore.Mvc.Versioning,Microsoft.AspNetCore.Mvc.Versioning.ApiExplorer (如果需要版本管理则添加) 我引用的版本如下 <PackageReference Include="Microsoft.AspNetCore.Mvc.<em>Versioning</em>" Version=" 2.3.0" /> <PackageReference Include="Microsoft.AspNetCore.Mvc.<em>Versioning</em>.ApiExplorer" Version="2.2.0 版本控制 添加 Nuget 包:Microsoft.AspNetCore.Mvc.<em>Versioning</em>,Microsoft.AspNetCore.Mvc.<em>Versioning</em>.ApiExplorer
或看起来就很难解析的1.2.45-alpha-beta+nightly.23.43-bla 就不能使用微软提供的 version 转换 不要看语义版本号很复杂,实际上也是有规则的,请看语义版本号(Semantic Versioning yadyn/959467 ,如果觉得这个库不靠谱,可以复制 git tools 项目的代码 GitVersion/SemanticVersion.cs at master 参见:语义版本号(Semantic Versioning