问题标签 [version-numbering]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2683 浏览

c# - 如何在 Devenv 中指定发布版本?

我在通过脚本构建 Visual Studio 项目方面是全新的,所以如果你觉得我对这个过程的理解不正确,请随时纠正我。

我有一个 Visual Studio 解决方案,它由一个 Wpf.exe 项目和几个类库项目组成。

目前我正在.sln使用下面的脚本成功构建文件

"%VS_IDE_DIR%devenv.com" "...Solution-File-Path.sln" /rebuild Release /useenv

当前,该Wpf.exe文件获取Wpf 项目的属性中 File Version指定Product Version 1.0.0.0的默认值。Publish -> Publish Version在此处输入图像描述

我想以某种方式设置File VersionandProduct Version通过我的脚本。我怎样才能做到这一点?

我有一个environment variable包含Product Versionand的内容File Version,基本上我想将 Product Version 和 File Version 的值设置为等于我的环境变量。

0 投票
1 回答
108 浏览

project - 项目的最佳版本控制方式是什么

这与版本控制非常混淆。我看到了很多版本控制示例。其中一些甚至包含颠覆信息。他们中的许多人看起来都不错。

  • 0.5
  • 0.1.0
  • 0.0.1.0
  • 5.5.5.2_R139
  • ...


软件版本控制的最佳实践/最佳方式是什么?

0 投票
1 回答
2942 浏览

teamcity - 使用文件中的计数器设置 Teamcity 版本号

我目前正在尝试更新版本号。在 TeamCity 中使用包含版本号的 Nant 构建文件。如果我只是使用

在脚本中,buildNumber 更新为 2.16.3,但我也希望在此版本号上有计数器。意思是我想拥有

但这不起作用。有人知道怎么做吗,在这个解决方案中尝试了很多东西http://binary-notes.blogspot.com/2011/05/controlling-application-version-number.html但是,${Version} 参数是一个线索为了我 ?

更新

通过使用 {0} 作为 Teamcity 中的内部版本号并将该内部版本号附加到文件中我自己的内部版本号来实现

0 投票
1 回答
170 浏览

iphone - 如何在 plist 中自动填充应用程序版本号?(iPhone/iPad)

我有一个 plist,我想在其中自动填充应用程序的版本号。这可能吗?如果是这样,有人可以告诉我怎么做吗?

0 投票
1 回答
894 浏览

android - 构建 APK 会从文件名中删除本机库版本号

我有一个使用自动工具构建共享库的遗留代码。这些库需要在 Android 应用程序中使用,因此我为它创建了一个简单的 Java 类和 JNI 包装器(作为共享的 .so 库)。

我已经有 Android.mk 脚本,可以正确执行旧版构建系统,为 Java 程序构建本机库并链接它。

输出文件如下:

lib-wrapper.so取决于库lib-alib-b. 请注意,旧版 autotools 设置将版本号添加到共享库文件名中 - 作为依赖项嵌入到lib-wrapper.so.

问题:

在 APK 构建期间(例如,从 Eclipse 导出未签名的包)版本号
从文件名中删除。这会导致错误:

无法加载库:link_image [1721]:30 无法为“lib-wrapper.so”加载所需的库“lib-b.so.2”

因为 APK 包含文件lib-b.so.

如何在 APK 构建期间强制保留版本号?

修改遗留构建系统是不可能的(除非它是必须的),因为相同的设置用于构建 x86 库/执行程序。

谢谢你。

0 投票
0 回答
907 浏览

maven - 如何使用 GMaven 从 Maven 发布插件中获取发布版本?

我觉得我在这里做错了,因为我已经在网上挖掘了一段时间(当然包括stackoverflow),但没有产生任何结果!

简而言之,我有一个使用 maven 发布插件设置的 maven 项目,该插件运行良好,正确增加版本,在 SVN 中签入代码,标记和部署没有问题。

但是,需要为每个版本生成一个脚本,该脚本必须引用生成的 jar。这意味着两件事:

  1. 对于发布版本,更改脚本以包含发布版本,将其提交回 SVN(因此它被标记等)
  2. 发布后,必须更新脚本以包含(下一个)SNAPSHOT 版本并提交回 SVN

例如,假设我当前的 pom 工作版本是 1.1.1-SNAPSHOT。因此,我的 script.sh 包含对 project-1.1.1-SNAPSHOT.jar 的引用。当我执行 mvn release:prepare(假设我会坚持使用 maven-release-plugin 建议的版本)时,发布版本将变为 1.1.1。在这个阶段,我的 script.sh 应该更改为引用 project-1.1.1.jar 并重新提交。在 mvn 发布时:执行所有 1.1.1 标记,部署到 maven repo 等。然后,我的pom 将更改为 1.1.2-SNAPSHOT 并提交回 SVN。此时我的脚本需要改成引用project-1.1.2-SNAPSHOT.jar。

我发现我可以通过使用 GMaven 插件之类的东西轻松更改脚本——实际上我已经在准备资源阶段启动了脚本(尽管也许我需要看另一个?)但是我最大的问题see 正在检索 maven-release-plugin 决定使用的版本:换句话说,我如何找出:

  • maven-release-plugin 决定使用的发布版本
  • maven-release-plugin 将使用的下一个 dev/SNAPSHOT 版本

一旦我可以访问这些,我想我可以让 GMaven 执行所需的代码来相应地更改我的脚本。(不过,如果查看上述场景,您可以推荐一种更好的方法,我会很高兴听到它!)是否有像 ${project.releaseVersion} 这样的属性(顺便说一句,这不起作用)哪个可以给我这两个版本号?

提前致谢!

丽芙

0 投票
0 回答
173 浏览

.net - 插件架构的向后兼容性和 .Net 程序集版本号

我有一个 .Net 系统,当第三方引用提供的 API 程序集时可以扩展该系统。我担心的是向后兼容性,即我需要确保无论何时对提供的 API 程序集进行二进制非破坏性更改(例如添加一个方法):

  1. 使用旧版本构建的插件在运行新版本时应该仍然有效。
  2. 但是,使用新版本构建的插件在运行旧版本时不应该工作(否则,如果插件试图调用不存在的方法,这可能会导致运行时失败)

由于第二个要求,我不能简单地保持版本号相同 - 然后我知道满足要求 1 的唯一方法是使用绑定重定向,这需要为所有 API 程序集维护所有先前版本号的长列表。这似乎容易出错且乏味。

在处理 .Net 程序集版本号时,是否有任何替代策略来保持合理的向后兼容性?

0 投票
8 回答
18788 浏览

git - 寻找一种使用 git flow 自动化“bump 版本”的方法

我已经使用 git flow 几个月了,效果很好。我想自动化“凹凸版”操作。

该项目是 PHP 并且 footer.php 有一个标记来替换当前的发布标记。我确信通过 git log 和 PHP 文件的一些 awk'ing 一切都应该解决,但我假设有人之前已经这样做了......

有任何想法吗?

0 投票
1 回答
1077 浏览

shell - 版本和构建信息错误 Xcode 4

我正在使用 Xcode 4.3,并且我已按照此用户的步骤创建脚本:

版本与 XCode 中的构建

无论出于何种原因,我似乎都不能在那里发表评论。由于 StackOverlow 中的答案区域不是论坛/讨论,我有点被迫根据该答案提出问题。

在第 7 步中,他引用了 2 种增加构建版本的方法:数字和十六进制数字

两者都返回完全相同的 shell 错误:

我去了摘要选项卡,版本和构建都是 1.0。如果我将其更改为“1”,则错误为“第 4 行 1 + 1:语法错误:无效算术运算符(错误标记为“+ 1”)

我做错了什么,我能做些什么来解决这个问题?

0 投票
2 回答
7768 浏览

maven - 如何为使用 Maven 构建的 Eclipse 插件自动化版本号更新过程

我正在使用与此处描述的项目类似的项目 。因此,它在父 pom.xml 中有一些模块:

这些模块有一个通用的版本号,例如1.0.0-SNAPSHOT或没有-SNAPSHOT。feature.xml 文件需要包含相同的版本号:

和:

文件 category.xml(在 p2 更新站点项目中)和 MANIFEST.MF(在插件项目中)需要包含相同的值。

问题是:如何使用 Maven 自动化所有这些文件中的版本号更新过程?

我尝试使用 maven-release-plugin 和 maven-versions-plugin 解决这个问题。第一个插件做了很多未使用的操作(比如做很多 CVS 提交,我在这个项目中没有使用)。第二个插件只修改pom.xml文件,不修改feature.xml、category.xml和MANIFEST.MF,还是我用的不太好。