把代码上传到gitee的时候,怎么忽略node_modules文件夹

在将代码上传到 Gitee(或 GitHub、GitLab 等)时,node_modules 文件夹是必须忽略的,因为它:

  • 体积巨大(几 MB 到几百 MB)
  • 可以通过 package.jsonnpm install 自动生成
  • 包含平台相关二进制文件,跨平台不兼容
  • 容易引发冲突

✅ 正确做法:使用 .gitignore 文件忽略 node_modules

第一步:创建 .gitignore 文件

在你的项目根目录 下(和 package.json 同级),创建一个名为 .gitignore 的文件。

注意:文件名是 .gitignore(以点开头),没有扩展名。

第二步:写入要忽略的内容

打开 .gitignore 文件,添加以下内容:

lua 复制代码
gitignore
深色版本
# 忽略 node_modules 文件夹
node_modules/

# 其他常见需要忽略的文件(可选)
npm-debug.log
yarn-error.log
yarn-debug.log
.pnpm-debug.log

# 环境变量文件(敏感信息!)
.env
.env.local
.env.development.local
.env.test.local
.env.production.local

# IDE 和编辑器生成的文件
.DS_Store
Thumbs.db
*.swp
*.swo
.vscode/
.idea/
*.log

# 构建输出目录(如果你有构建过程)
dist/
build/
out/
.next/
nuxt/

🔥 最关键的一行就是:node_modules/


第三步:确保 Git 未追踪 node_modules

如果你已经执行过 git add . 或提交过 node_modules,需要先从 Git 中移除它(但保留本地文件):

bash 复制代码
bash
深色版本
# 从 Git 缓存中删除 node_modules(不会删除本地文件)
git rm -r --cached node_modules

# 提交更改
git commit -m "Remove node_modules from version control"

然后再继续后续操作。


第四步:正常提交代码

csharp 复制代码
bash
深色版本
git add .
git commit -m "feat: add project with .gitignore"
git push origin main  # 或 master

此时 node_modules 就不会被上传了。


✅ 额外建议

  1. 使用模板 :你可以使用 www.toptal.com/developers/... 生成适合 Node.js 项目的 .gitignore
  2. Gitee/GitHub 自动识别 :新建仓库时,可以选择"Node"模板,它会自动帮你生成 .gitignore
  3. 团队协作.gitignore 文件要提交到仓库,让所有开发者都遵循相同的规则。

✅ 示例项目结构

go 复制代码
深色版本
my-project/
├── .gitignore          ← 已配置忽略 node_modules
├── package.json        ← 包含依赖声明
├── package-lock.json   ← 锁定版本(建议提交)
├── server.js
├── routes/
├── controllers/
└── node_modules/       ← 不会被上传!

✅ 总结一句话:

在项目根目录创建 .gitignore 文件,并写入 node_modules/,即可阻止 Git 上传该文件夹。

这样你的 Gitee 仓库就会干净、轻量、安全!

相关推荐
散峰而望1 天前
C/C++输入输出初级(一) (算法竞赛)
c语言·开发语言·c++·算法·github
C.咖.1 天前
Linux环境下——Git 与 GitHub
linux·git·github·远程仓库
CoderJia程序员甲1 天前
GitHub 热榜项目 - 日榜(2025-11-12)
ai·开源·大模型·github·ai教程
杂鱼豆腐人1 天前
pnpm环境下防止误使用npm的方法
前端·git·npm·node.js·git bash
摇滚侠1 天前
GIT版本管理工具轻松入门 | TortoiseGit,Git 介绍软件安装配置,笔记01
笔记·git
mortimer1 天前
只需三步,动手搭建一个本地免费【实时语音转录】工具WhisperLiveKit
ffmpeg·github·openai
山有木兮木有枝_1 天前
“误操作导致 feat 功能未生效,尽管 merge 已完成”
git
百锦再1 天前
第14章 智能指针
android·java·开发语言·git·rust·go·错误
摇滚侠1 天前
GIT版本管理工具轻松入门 | TortoiseGit,解决冲突,笔记07
笔记·git
卡洛斯(编程版1 天前
拉取github更新到本地
github