使用git push在nodejs包中自动递增应用程序版本

时间:2018-08-14 15:02:17

标签: node.js git npm versioning

我正在努力寻找一种自动增加节点应用程序的package.json的方法。 我了解npm有一个名为version的脚本,该脚本接受3个参数:次要,主要和补丁,但是例如,我无法使用npm version minor来递增到新版本。 每次尝试我都会得到npm ERR! Git working directory not clean

所以我要做的是以下事情:

  1. 我有一个带有package.json文件的节点应用程序,其版本从0.0.1。开始。
  2. 研究新功能或错误修复或其他任何东西,然后创建一个新分支,并希望将更改推送到git。
  3. 现在是挣扎的部分:

在这一点上,我认为在提交之前,我必须增加json包。推送到git时如何自动增加值? 正如我现在所说的,它将是0.0.1版,例如:

{
  "name": "App name",
  "version": "0.0.1",
   ...
}

使用新的提交,假设这是次要版本,应该是:

{
  "name": "App name",
  "version": "0.0.2",
   ...
}

此应用也不会在NPM软件包存储库中发布,因此我不需要npm发布...

我们将不胜感激:)

最好的问候, 扎波

2 个答案:

答案 0 :(得分:0)

首先感谢您的帮助。 其次,我得到的错误是因为我所在的分支中有未提交的文件。为了解决该错误,我在git add之前做了git commitnpm version,此步骤让我可以使用npm version patch命令并将package.json文件版本增加到我想要的0.0.2。 正如@Erick Ruiz de Chavez在上面的评论中所指出的,npm version倾向于在npm上发布软件包,但是我已经使用它在帮助下将Github发行版同步到package.json中的软件包版本。 git push && git push --tags命令。

答案 1 :(得分:0)

次要添加-您可以像这样跳过Git版本标记:

npm version patch -git-tag-version false

如果您尚未提交更改,这也将起作用,并且除了增加package.json中的版本号之外,什么也不会做。