相关疑难解决方法(0)

为什么"npm install"修改package-lock.json?为什么要把它交给git呢?

当我在项目中运行"npm install"时,它经常修改package-lock.json,例如,如果我从另一台计算机(具有不同节点或npm版本)处理同一项目.

但与此同时,文档建议该文件应该添加到版本控制(在我的情况下为git):

https://docs.npmjs.com/files/package-lock.json

此文件旨在提交到源存储库,并用于各种目的:...

那么我应该在切换工作机器时或者在其他人的情况下来回提交npm所做的更改npm install吗?这将是一场噩梦.

目前我只是放弃了由npm对package-lock.json所做的任何更改,并且它一直正常工作.所以我不妨把它添加到.gitignore ......

我做错了吗?我应该用npm ci吗?我不会把我的电脑称为"CI",它只是一台开发机器,我为什么要在那里使用它?

基本上我和这位先生有同样的问题:

https://github.com/npm/npm/issues/18103#issuecomment-370401935

(遗憾的是,我无法在该问题上添加评论或根本无法创建新问题,npm repo已禁用问题)

node.js npm package-lock.json

7
推荐指数
1
解决办法
1390
查看次数

如果package-lock.json锁定它,那么在package.json中声明的"兼容版本"(^版本)有什么意义呢?

我知道主要优点,package-lock.json我同意这一点.它不仅在最后一次安装中锁定下载的版本,而且还锁定了uri ...在大多数情况下,这是必要的,因为它可以复制最相似的项目.

但有一件事对我来说似乎很奇怪,它package.json具有声明依赖性的功能dependency: ^1.0.0,应该让npm在每个安装中下载该软件包的最新版本和兼容版本.

我正在一个我真正需要的项目.否则,每次我的依赖项发布补丁时,都需要进行新的提交更新,package.json只更改版本,因此我的管道也可以覆盖package-lock.json.

简而言之,似乎在package.json使用某个功能时......会package-lock.json阻止那个功能.

我错过了什么吗?

javascript npm semantic-versioning package.json

7
推荐指数
1
解决办法
113
查看次数

如何重命名nodejs项目?

每当我启动我的nodejs项目时,它就会通过我给它的旧名称来引用它:

gpio-editor @ 0.0.0 start/home/pi/RPi-Computer-Power/RPi-Server

我不希望它再被称为gpio-editor,但我还没有找到一种方法来改变它的互联网.我是nodejs的新手,我最初没有制作这个项目.

如果有人知道怎么做,请告诉我.谢谢,尼尔

project node.js package.json

5
推荐指数
2
解决办法
7281
查看次数

为什么在使用 npm install 时,package-lock.json 会导致 docker 容器构建失败?

网上有很多人用不同的方式问同样的问题,但没有明确的答案。任何人都可以理解到足以解释为什么docker buildpackage-lock.json应用程序中存在文件时会失败,而当文件不存在时会成功运行吗?貌似跟npm有关,但是不清楚。

每个人都说删除package-lock.json,但它存在是有原因的。

注意: npm install在我的本地机器上工作正常,只是在 docker 容器中失败。

如果我有这个 Dockerfile:

# First Stage: Builder
FROM node:13.12.0-alpine AS build
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
Run Code Online (Sandbox Code Playgroud)

并运行这个:

docker build -t container-tag ./
Run Code Online (Sandbox Code Playgroud)

我明白了:

npm WARN tar ENOENT: no such file or directory, open '/app/node_modules/.staging/eventsource-c2615740/example/index.html'
npm WARN tar ENOENT: no such file or directory, open '/app/node_modules/.staging/eventsource-c2615740/example/sse-client.js'
npm WARN tar ENOENT: no such file or directory, open …
Run Code Online (Sandbox Code Playgroud)

node.js npm docker package-lock.json

5
推荐指数
1
解决办法
3183
查看次数

package-lock.json是否需要在git中进行版本控制?

npm 5&nodejs 8引入了一个名为package-lock.json的文件,我想知道它是否需要版本化或在git中被忽略

git package gitignore node.js npm

1
推荐指数
1
解决办法
1108
查看次数