【发布时间】:2015-04-19 15:08:38
【问题描述】:
我正在做的项目是一个 jQuery 插件。我已经成功地让 Travis CI 使用 Gulp/NodeJS 构建了一个测试项目。现在我正在尝试找出使用什么工作流程来提高版本号。
在 TeamCity 和 MyGet 中,CI 服务器中有一个设置,用于形成在每次构建时自动递增的版本号模式,构建脚本可以使用它来更新部署文件中的版本并标记 Git 存储库。但是,在 Travis CI 的免费版本中,似乎根本没有版本控制选项。
我已经阅读了几篇关于使用 Travis CI 进行持续部署的文章,here、here 和 here,但没有一篇文章甚至提到版本控制的主题。显然,版本需要更改才能发布。那么我在这里错过了什么?
我在阅读文档时注意到的另一个问题是它提到 Travis CI 无法更新 GitHub 存储库。这不是基本上意味着它无法创建Git标签吗?
如果无法从 Travis CI 进行版本化,那么此类插件发布过程的典型工作流程是什么?版本控制是否总是手动完成?如果是这样,怎么会有“持续部署”?
【问题讨论】:
-
你最后找到解决办法了吗?我希望在部署时实现相同的自动增加版本号。
-
我最终只是保持简单并使用MyGet。我无法启用 TravisCI,因为我不是 repo 的所有者并且所有者没有这样做。对于版本提升,我使用了gulp-bump。这是我的Gulp script 更新版本。请注意,gulp-bump 支持手动凹凸工作流程以及自动化工作流程,但仅支持版本控制 .json 文件。但是你总是可以使用正则表达式来碰撞其他任何东西(参见我的脚本)。
-
"我在阅读文档时注意到的另一个问题是它提到 Travis CI 无法更新 GitHub 存储库"你可以在构建中做到这一点手动,但由于更新文件意味着新的提交,你最终会得到一个新的构建
-
@rolebi - 我的观点是 CI 服务器无法使用版本号标记构建,但在这种特殊情况下,我最终创建了更新多个源文件以同步项目/文档中的版本号也是如此。