软件版本编号遵循什么规则? [复制]

2024-04-04

我一直在开发一些软件并想给它版本号。

我该怎么做呢?

为什么有些软件有两个版本,比如1.3v1.1

或者有些有 3 个数字 - 4.0.1

这一切背后的方法是什么?

Thanks.


我见过的常用方法是X.Y.Z,一般对应major.minor.patch:

  • 每当引入一些重大更改时,主要版本号就会发生变化。例如,对软件包进行较大的或可能向后不兼容的更改。
  • 当引入新的次要功能或推出一组较小的功能时,次要版本号会发生变化。
  • 当向客户发布新版本的软件时,补丁号会发生变化。这通常用于小错误修复等。

该版本控制系统称为语义版本控制,其规范可以在以下位置找到:https://semver.org https://semver.org

其他变体使用内部版本号作为附加标识符。因此,如果您有许多版本在版本之间进行了测试,那么您可能会有大量的 X.Y.Z.build。我使用了几个按年/月或年/版本标识的软件包。因此,2010 年 9 月的版本可能是 2010.9 或 2010.3,这是今年的第三个版本。

版本控制有很多变体。这一切都归结为个人喜好。

对于“1.3v1.1”,这可能是两个不同的内部产品,可能是与主产品不同的共享库/代码库;这可能表示主要产品的版本 1.3,以及内部库/包的版本 1.1。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

软件版本编号遵循什么规则? [复制] 的相关文章

  • Windows 上 Matlab 64 位版本的免费 SCM [已关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当 Matlab 安装为 64 位版本时 它只能使用 64 位源代码控制系统 是否有免费的源代码控制系统
  • Git 与 master 合并,无需签出 master

    每次我需要的时候merge develop with master I do git checkout master git merge develop 有时我忘记切换出去master 因此 我在运行时错误地更改了代码master 它可能会
  • 为 3 人团队设置 Git?

    这篇文章的目的是总结所有信息 为 3 人参加比赛建立一个封闭的存储库 请随意将我没有注意到的问题添加到列表中 请将每个问题的每个答案添加为单独的答案 情况一 草稿和文件可以在3人之间交换 这 writer 只能将文件推送到 存储库 情况B
  • 使用 Git 维护项目

    我有 2 个项目 实际上这 2 个项目彼此大约 80 相同 主要区别在于语言和商业模式 一个是针对使用英语的更多受众 并且有 9 美元 月的商业模式 另一个是使用本地语言与免费增值商业模式 有时 当我想添加新的特性 功能时 我想将其添加到两
  • 根据代码版本测试和管理数据库版本

    当您开发应用程序时 数据库的更改不可避免地会出现 我发现的技巧是让数据库构建与代码保持同步 过去 我添加了一个针对目标数据库执行 SQL 脚本的构建步骤 但这很危险 因为您可能会无意中添加虚假数据或更糟的情况 我的问题是保持数据库与代码同步
  • SQL版本控制方法

    SO 有几个关于 SQL 版本控制的问题 网上有很多资源 但我找不到完全涵盖我想要做的事情的东西 首先 我在这里谈论一个方法论 我熟悉各种源代码控制应用程序 也熟悉 Red Gate 的 SQL Compare 等工具 并且我知道如何编写应
  • Git:由于看似随机的合并,更改不断丢失

    我有一种感觉 这将是一个显而易见的答案 但我似乎无法解决 似乎发生的情况是 我向服务器提交 推送了一些更改 并且我的副本上的一切都显示正常 然后 另一位开发人员从同一分支的服务器中拉取 据我所知 据称看到了我的更改 进行一些修改 将它们提交
  • 列出其他人(即不是我)所做的提交?

    是否有一种标准方法可以列出 git 存储库中其他人 即不是我自己 所做的所有提交 I tried git log not author username 但看起来 not仅适用于修订版 的联机帮助页git log似乎没有提供反转谓词的方法
  • 使用 GIT 自动增加 AssemblyFileVersion

    好吧 我知道这可能不是传统的 但除此之外 我使用 AssemblyFileVersion 作为我的 构建名称 字符串 它的格式如下 File Version information for an assembly consists of t
  • 自定义 SSH 端口上的 Git

    我的 VPS 提供商建议我将 SSH 端口保留为他们默认分配的自定义端口号 不是 22 问题是 虽然我知道我可以在创建远程配置时提供端口号 但在进行 Git 克隆时似乎无法提供相同的操作 我在用gitolite https wiki arc
  • 纯基于网络的版本控制系统

    我的托管服务当前不允许在其服务器上运行 允许 svn git cvs 我真的希望能够将我的开发计算机上的当前源代码与我的生产服务器 同步 我正在寻找一个纯php python ruby版本控制系统 不只是一个client对于版本控制系统 不
  • 这是什么意思? “这正是因为不应该为库的所有用户确定性地重新编译库。”

    我是 Rust 新手 正在尝试了解 Cargo 的事情 我在他们的常见问题解答中读到 为什么二进制文件在版本控制中有 Cargo lock 但库没有 https doc rust lang org cargo faq html why do
  • 使用BFG时可以指定多个文件吗?

    我正在尝试删除通配符无法覆盖的多种类型的文件 我尝试使用多个 delete files 但它不接受它 还尝试将文件全部放在 delete files 之后 但它也不接受它 有没有一种方法可以将它们全部放在一个命令中 如果没有 那么我必须运行
  • “解决方案的源代码控制之间似乎存在差异......”

    我们在 Visual Studio 2005 和 TFS 中经常遇到此错误 任何人都可以帮助我们查明此消息的原因吗 完整的消息是 解决方案的来源之间似乎存在差异 控制有关某些项目的信息以及 项目文件 为了解决这个差异 有必要检查 项目文件并
  • 如何在 Perforce 树中查找未跟踪的文件? (svn状态的模拟)

    有人有脚本或别名来查找 Perforce 树中未跟踪 实际上 未添加 的文件吗 编辑 我更新了对此已接受的答案 因为看起来 P4V 在 2009 年 1 月的版本中添加了对此的支持 EDIT 请用p4 status现在 不再需要跳圈了 参见
  • 使用 ssh-keygen 创建 SSH 密钥不会创建 .ssh 文件夹

    我正在尝试使用 msysgit 创建我的公共 私有 rsa 密钥对 我运行这个命令 ssh keygen C email protected cdn cgi l email protection t rsa 一切看起来都很好 我收到消息了
  • 如何存储和计算版本控制历史记录?

    考虑这个简单的 python 代码 它演示了一个非常简单的字典版本控制设计 def build current history current for action key value in history assert action in
  • 如何使用 Groovy 获取自上次成功构建以来 Jenkins 的提交信息?

    如何编写自定义 groovy 脚本以轻松操作自上次成功构建以来所有提交的数据 在 gradle maven 步骤之后添加新的构建步骤 gt 执行系统 groovy 脚本 适配代码 import com tikal jenkins plugi
  • Mercurial日志接口

    我一直在浏览 hginit com 上的教程 但我发现了一个相当不方便的方面hg log特征 基本上 当我输入它时 我会在顶部看到最新的更改 在底部看到最旧的更改 但这很烦人 因为大多数时候 您希望看到最新的修订版 所以 假设我有 100
  • 在 Xcode 9 上切换分支

    我无法找到使用 Xcode 9 切换分支的菜单项 工作副本菜单似乎已经消失 有任何想法吗 Xcode 9 Xcode 8 Press 2 to open the new Source Control Navigator 右键单击master

随机推荐

  • iOS QuickType 栏:添加自定义建议

    我想根据我的应用程序的用户添加自定义建议 例如 假设它是游戏 然后根据他与之交互的用户 理想情况下 这些建议应在输入字段仍为空时显示 知道该怎么做吗 None
  • 无法加载文件或程序集或其依赖项之一。该系统找不到指定的文件

    我有这样的代码 public static Type ToType XmlSerializableType xmlSerializableType string func XmlSerialzationType ToType Type ty
  • 缩小以适应 Flexbox 或 Flex-basis 中的内容:内容解决方法?

    我有一个网络应用程序 我使用 Flexbox 进行布局 我试图既填充屏幕 它是一个应用程序 而不是文档 又尽可能不指定任何固定的宽度或高度 因为内容可能是各种各样的东西 完全流畅的布局 梦想 因此 我需要流体高度 全宽页眉和页脚 然后中间的
  • Golang将interface{}转换为struct

    我想改进下面代码中的 getCustomerFromDTO 方法 我需要从 interface 创建一个结构 目前我需要将该接口编组到 byte 然后将数组解组到我的结构 必须有更好的方法 我的用例是通过rabbitmq 发送结构 并使用这
  • 奇怪的 var_dump 行为

    我有以下代码行 var dump array 在一个文件中 它输出如下 array size 0 empty 在第二个文件中 它输出 string pre class xdebug var dump b array b i size 0 i
  • 使用 OpenCSV 从 csv 读取流数据

    我有加速度计和陀螺仪传感器流数据 保存在下载文件夹中 我想实时读取所有数据或逐行读取数据流 但我无法超出第一行 try CSVReader reader newCSVReader newFileReader path getAbsolute
  • 保护 Django 站点中的静态媒体访问

    我正在建立一个注册用户可以上传文件的网站 然后通过 Apache 提供这些文件 只有登录的用户才应该能够访问这些文件 我读过了这一页 http docs djangoproject com en dev howto apache auth
  • 如何通过字符和字数检测字符串中是否包含印地语 (devnagri)

    下面是一个示例字符串 string abcde abcde 我需要检查该字符串是否包含任何印地语 梵文 内容 如果包含 则检查字符和单词的数量 我猜带有 unicode 字符类的正则表达式可以工作http www regular expre
  • 使用 ggplot2 绘制发散堆积条形图

    有没有办法使用ggplot2创建发散的堆积条形图 如下图右侧所示 可重现示例的数据 library ggplot2 library scales library reshape dat lt read table text ONE TWO
  • 如何检查 MPMediaItem 是否仅包含音频的 MPMediaType?

    我希望我需要进行按位比较 但我不清楚 Objective C 语法是如何完成的 MPMediaType 的枚举定义如下 我需要做的是确保 MPMediaItem 根本不是视频 因为尽管我使用媒体查询过滤到 MPMediaTypeAnyAud
  • 使用 C# 在预先打印的纸张表单上的特定位置打印文本

    我需要在打印纸的特定位置打印纸张文本 原因是打印是在已打印的表单上完成的 其中包含名字和姓氏等字段 因此 当我得到这个人的名字时 它应该以纸质形式打印在分配的空间内 想知道是否有任何现有的库允许我使用 X 和 Y 坐标等坐标系在特定位置进行
  • Maven - 在 Eclipse 中抑制覆盖托管版本警告

    我在用spring boot 并且遇到了类似于所描述的错误here https stackoverflow com q 14730329 2860319 我将以下内容添加到我的 pom xml 中
  • 逆向工程iOS天气应用程序UI组件[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在尝试写下 iOS 天气应用程序的摘要 我感兴趣的主要组件在下图中标记为 1 2 3 4 和 5 UI 应获取如下 一个 ViewContr
  • 如果行中的特定单元格不为空,则格式化整行

    我想根据其中的特定单元格是否为空来格式化整行 我希望条件格式能够遍历所有行 并在该行中的 C 列不为空时添加背景颜色 我该如何解决 为了说明假设 整行 包含 A Z 列 请尝试格式 条件格式 自定义公式是 C1 lt gt 与您选择的格式和
  • 何时使用表达式混合创建用户控件

    因此 我正在开发一个新应用程序 并且我正在使用 Expression Blend 第一次 来创建布局和样式等 但我有一个关于何时要创建用户控件的问题 我有一个蛀虫 我想用它作为很多东西的背景 但它实际上是边框中的边框 然后我们将把任何控件放
  • 如何使用 Exchange Web 服务 (EWS) API 通过共享邮箱发送电子邮件

    我正在使用 MS Exchange Web 服务 API 通过共享邮箱发送电子邮件 发送电子邮件可以工作 但它们不会保存在已发送的项目中 如下所示 手动执行此操作 项目保存在已发送项目中 但通过我的代码不会保存它们 using Micros
  • 循环变量文件名[重复]

    这个问题在这里已经有答案了 我正在使用 Fortran 对分成许多文件的庞大数据集进行计算 文件的名称是 maltoLyo12per reimage set1 traj maltoLyo12per reimage set2 traj mal
  • 使用 angularjs 将多个对象发送到 webapi

    我的 ASP NET WebApi 应用程序中有以下控制器 Route api PutItem HttpPut public IHttpActionResult PutItem Guid id Item item if ModelState
  • 如何在TabControl.ContentTemplate中添加新的用户控件?

    我不太愿意在中添加用户控件的新实例TabControl ContentTemplate 我的 Xaml 在这里
  • 软件版本编号遵循什么规则? [复制]

    这个问题在这里已经有答案了 我一直在开发一些软件并想给它版本号 我该怎么做呢 为什么有些软件有两个版本 比如1 3v1 1 或者有些有 3 个数字 4 0 1 这一切背后的方法是什么 Thanks 我见过的常用方法是X Y Z 一般对应ma