Npm Package2019-08-26Θ
npm 依赖包#
版本号#
npm 采用了 semver 规范作为版本管理。
semver 规范:一个 npm 依赖包的版本格式为:主版本号.次版本号.修订号
- 主版本号(
Major Version)颠覆性改动,可能存在与低版本API不兼容的情况。 - 次版本号(
Minor Version)小版本改动,API兼容(无感更新)。 - 修订号(
Path,也叫补丁)Bug修复或者细微改动,向前兼容。
特殊符号的意义:
- “x.y.z” 精确版本号;
- "^x.y.z" 兼容补丁、小版本改动。如
"3.2.1"等价">= 3.2.1 < 4.0.0";- "~x" 兼容补丁、小版本改动(范围更宽)。如
"~3"等价">= 3.0.0 < 4.0.0";
- "~x" 兼容补丁、小版本改动(范围更宽)。如
- "~x.y.z" 兼容补丁改动,如
"~3.2.1"等价">=3.2.1 < 3.3.0"- "~x.y" 兼容补丁改动(范围更宽),如
"~3.2"等价">=3.2.0 < 3.3.0"
- "~x.y" 兼容补丁改动(范围更宽),如
- 通配符 "x.y"、"x.*"、"x"、"*"
- "x.y.z-beta.w" 预发布版本号,有三个关键词定义:
alpha预览版(内部测试)beta测试版(公开测试)rc(release candidate)最终测试版本(候选版本)
- 其他
a-b范围>=、<=、||
PATH 环境变量#
每次执行 npm run xxx 时,会自动建一个 Shell,会将当前项目的 node_modules/.bin 的绝对路径加入到环境变量 PATH 中,执行结束,将环境变量 PATH 恢复。
Process.argv#
process.argv 返回一个数组
- 第一个元素是启动
node进程的可执行文件的绝对路径 process.execPath - 第二个是当前执行 js 的文件路径
- 其他的是命令参数
比如执行
npm run scp,打印process.argv: