我们需要将Karma测试运行器集成到TeamCity中,为此我想给系统工程师一个小脚本(powershell或其他东西):

从一些配置文件中获取所需的版本号(我想我可以把它作为一个注释放在karma.conf.js中) 检查karma runner的定义版本是否安装在npm的全局repo中 如果不是,或者安装的版本比期望的旧:选择并安装正确的版本 \Scripts-Tests\karma.conf.js——reporteteamcity——单次运行

所以我真正的问题是:“如果安装了所需版本的包,如何检入脚本?”你应该做检查,还是每次都调用npm -g install更安全?

我不想总是检查和安装最新的可用版本,因为其他配置值可能变得不兼容


当前回答

bash还有一个:

npm outdated -parseable|cut -d: -f5|xargs -L1 npm i

其他回答

你可以尝试以下两种选择:

检查过时的包裹 npm过时 检查并选择要更新的包 NPX npm-check -u

另一种方法是首先升级一揽子计划。Json文件使用,

ncu -u

然后简单地运行,

npm install

将所有包更新到最新版本。 ps:它会将所有的包更新到最新版本,但是如果包已经是最新的,那么包将完全不受影响。

在npm@5.0.0+上,你可以简单地做:

npm update <package name>

这将自动更新包。json文件。我们不需要手动更新最新版本,然后使用npm update <包名>

您仍然可以使用旧的行为

npm update --no-save

(参考)

NPM命令更新或修复某些依赖清单文件中的漏洞

Use below command to check outdated or vulnerabilities in your node modules. npm audit If any vulnerabilities found, use below command to fix all issues. npm audit fix If it doesn't work for you then try npm audit fix -f, this command will almost fix all vulnerabilities. Some dependencies or devDependencies are locked in package-lock.json file, so we use -f flag to force update them. If you don't want to use force audit fix then you can manually fix your dependencies versions by changing them in package-lock.json and package.json file. Then run

NPM更新&& NPM升级

要真正更新一个包,请安装NCU,然后仅为该包运行它。这将是最新的。

npm install -g npm-check-updates

ncu -f your-intended-package-name -u