“npm 版本<major|minor|patch>”和“dist”目录

问题描述 投票:0回答:1

我使用

node.js
gulp
作为我的环境的基础设施。我正在使用这个环境编写一个 jQuery 插件。目录结构如下所示:

jquery-plugin
    |
    ---- dist (contains complied and minified plugin files)
    |
    ---- src (source code)
    |
    ---- gulpfile.js
    |
    ---- package.json

现在,我已经编写了

gulp
文件来包含包含
watch
任务的指令,每当保存更改时,该任务都会将文件从
src
复制到
dist
。另请注意,
js
文件标题部分的横幅是通过
gulp-header
设置的,其中包括从
package.json

自动提取的版本号

到目前为止一切都是正确的。

现在,假设我从版本0.0.1开始,并经历一个开发周期(在我的

develop
分支中完成),那么最终我的代码准备就绪。我会在我的
develop
分支中提交所有内容,然后切换到
master
,合并
develop
中的代码。现在代码已准备好发布。

我会转到我的终端,然后运行

npm version minor
。这将使版本 0.1.0 并将新版本签入到
master
,并添加标签 v0.1.0。问题是,
src
dist
中的文件在其标头中仍然具有版本0.0.1(在运行版本命令之前从上一个版本中提取,因为没有实际保存在这些文件中)运行版本命令后已完成)。

如何确保

js
目录中
dist
文件的标头部分中的版本自动更新?

谢谢。

node.js git gulp gulp-watch gulp-header
1个回答
1
投票

进一步调查该问题后,我执行了以下操作:

  1. 运行

    npm --no-git-tag-version version minor
    。这会提高版本,但不会签入任何文件,也不会添加标签。

  2. 触摸/保存

    src
    文件之一。这将在
    dist
    目录中使用正确的版本号更新标头

  3. 在 git 中手动签入,并以

    vMa.Mi.P
    格式添加新标签(其中
    Ma
    major 编号,
    Mi
    minor 编号,
    P
    补丁) 数量)

参考:https://docs.npmjs.com/cli/version

© www.soinside.com 2019 - 2024. All rights reserved.