把代码上传到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 仓库就会干净、轻量、安全!

相关推荐
Lin_Aries_04215 小时前
部署 GitLab 服务器
linux·运维·服务器·docker·gitlab·github
真智AI7 小时前
[特殊字符] AI时代依然不可或缺:精通后端开发的10个GitHub宝藏仓库
人工智能·github·系统设计·后端开发·github资源·编码实践
wdfk_prog13 小时前
`git rm --cached`:如何让文件“脱离”版本控制
大数据·linux·c语言·笔记·git·学习·elasticsearch
FreeBuf_13 小时前
GitLab高危漏洞可致实例崩溃(CVE-2025-10858 和 CVE-2025-8014)
gitlab
Mark_Aussie14 小时前
本地项目上传到Git仓库
git
Grassto16 小时前
免费的 CI/CD 服务,了解一下 GitHub Actions ?
ci/cd·github·github actions
DeepHacking17 小时前
GitHub代码推送指南
github
破坏的艺术17 小时前
GitHub Spec Kit:官方规格驱动开发工具包深度解析
github·vibe coding
骚饼18 小时前
Git 命令配置别名、Git命令缩写(Mac版)
前端·git
恒雨田19 小时前
Jenkins安装并与GitLab集成,实现dev、qa、uat、prod多分支持续集成的详细步骤
ci/cd·gitlab·jenkins