工具与效率已解决
为什么 node_modules 不应该上传 GitHub?
说明 node_modules 的可生成属性,以及 package.json 与 lockfile 才是应提交的依赖依据。
问题正文
node_modules 文件特别多,Git 一直显示大量变化。
为什么不应该把它上传 GitHub,删除后项目是否还能恢复运行?
说明 node_modules 的可生成属性,以及 package.json 与 lockfile 才是应提交的依赖依据。
问题正文
node_modules 文件特别多,Git 一直显示大量变化。
为什么不应该把它上传 GitHub,删除后项目是否还能恢复运行?
ANSWERS
回答内容
node_modules 是依据 package.json 和 lockfile 生成的本机依赖副本,不是项目源代码。它可以删除并重新安装,真正需要提交的是依赖声明和锁文件。
在 .gitignore 中加入 node_modules/。
保留并提交 package.json 与唯一 lockfile。
需要重建时先确认运行时版本,再执行项目约定的安装命令。
通过测试或启动命令验证依赖完整。
# .gitignore
node_modules/
# 删除后按 lockfile 重新生成
npm ci上传 node_modules 会让仓库巨大,还可能把当前操作系统的二进制依赖带给别人。
删除前确认当前目录;Windows 可用文件管理器或适合当前 Shell 的命令。
npm Docs:package.json:https://docs.npmjs.com/cli/v11/configuring-npm/package-json
npm Docs:npm ci:https://docs.npmjs.com/cli/v11/commands/npm-ci