Git 忽略文件 .gitignore(Vue3 Vite 项目)
.gitignore放在项目根目录,和package.json同级。写在这里的文件 / 文件夹,git 不会追踪、不会提交到远程仓库。
Vue3 + Vite 完整 .gitignore 模板,直接复制使用
# 依赖包,绝对不要提交
node_modules/
# 本地打包产物,dist是build输出,不上传
dist/
dist-ssr/
# 本地环境变量(重要!里面可能放密钥、接口地址)
*.local
.env.local
.env.development.local
.env.test.local
.env.production.local
# 日志文件
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# 编辑器IDE文件,每个人本地配置不一样,不要上传
.idea/
.vscode/
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# vite缓存
.vite/
# pinia持久化、本地临时文件
*.tmp
*.temp
#操作系统生成文件
.DS_Store
Thumbs.db
# coverage 单元测试覆盖率报告
coverage/
# typescript编译产物(js项目可以忽略)
*.tsbuildinfo
✅哪些忽略,哪些必须提交
🚫【必须忽略,不要上传 git】
node_modules/:依赖,体积巨大。别人拉代码执行pnpm install自己安装。dist/:打包后的代码,CI / 服务器打包,本地产物不要推远程。- IDE 配置:
.idea/、.vscode/,每个人编辑器设置不同。 .env.local:本地私有的环境,可能存放密钥、本地接口地址。
⚠️注意:
.env/.env.test/.env.prod建议提交 ,这是项目公共环境配置;带.local后缀的是个人本地覆盖文件,要忽略。
- 各种
debug.log日志。 .vite缓存文件夹。
✅【一定要提交到 git】
src/源代码package.json、package-lock.json/pnpm-lock.yaml(锁文件!必须提交,保证所有人依赖版本一致)vite.config.js、jsconfig.json.env、.env.test、.env.production(不带 local)公共环境变量.gitignore本身index.html
⚠️容易踩坑
- pnpm‑lock.yaml/package‑lock.json 千万不要忽略!
锁文件保证团队所有人安装完全一样版本依赖,忽略会出现 "本地好的,别人电脑报错"。 - 如果文件已经被 git 跟踪,后加到 gitignore 是不生效的!
比如已经提交过
.vscode,再写进 gitignore 不会自动删除。执行清除缓存命令:
git rm -r --cached .vscode
git add .
git commit -m "移除已经跟踪的vscode文件"
--cached:只删除 git 记录,本地文件不会删掉。
.env.local放你本地的接口地址、token,不要上传,防止密钥泄露 ;
公共配置.env.test可以提交。
补充:若依管理项目额外忽略
# 若依额外
# 本地临时生成文件
*.log
常见命令
# 查看哪些文件会被git忽略
git status
# 检查某个文件是否被忽略
git check-ignore -v node_modules
小总结记忆
依赖、打包产物、IDE 配置、个人本地环境、日志缓存全部忽略;源代码、配置文件、lock 锁文件全部提交。