自动更新 package.json 版本

新手上路,请多包涵

在我做一个小版本并标记它之前,我想更新 package.json 以反映程序的新版本。

有没有办法自动编辑文件 package.json

使用 git pre-release hook 帮助吗?

原文由 tUrG0n 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
2 个回答

npm version 可能是正确的答案。只是为了提供替代方案,我推荐 grunt-bump 。它由 angular.js 中的一个人维护。

用法:

 grunt bump
>> Version bumped to 0.0.2

grunt bump:patch
>> Version bumped to 0.0.3

grunt bump:minor
>> Version bumped to 0.1.0

grunt bump
>> Version bumped to 0.1.1

grunt bump:major
>> Version bumped to 1.0.0

如果您仍然使用 grunt,它可能是最简单的解决方案。

原文由 zemirco 发布,翻译遵循 CC BY-SA 3.0 许可协议

我的构建和发布脚本在无法访问 git 的 docker 映像中运行,因此我想要一些不会修改我的存储库但能够发布自动递增版本的方法。所以我将此添加到预发布脚本中:

 npm view `sed -nr 's/"name": "([^"]+).*/\1/p' package.json` version | awk -F'.' '{ cmd = "npm version v" $1 "." $2 "." $3+1 " --force --no-git-tag-version"; system(cmd)}'

它能做什么:

  1. 用 sed 读取包名
  2. 要求使用 npm 查看版本的最新发布版本
  3. 调用 npm version –force –no-git-tag-version ,版本取自 (2) 并增加一

有一些方法可以改进它,但至少它是有效的并且是通用的。

原文由 Oleg Gordeev 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏