2-11 情景八:误添加了文件到版本库&gitignore文件
场景描述
不小心将 node_modules、.env 等文件提交到了版本库,需要移除并防止再次提交。
从版本库移除已跟踪的文件
# 移除文件但保留本地副本
git rm --cached .env
git rm -r --cached node_modules/
# 提交移除操作
git commit -m "chore: remove sensitive files from tracking"
bash
--cached 参数很关键——它只从 Git 的索引中移除文件,不会删除工作区的实际文件。
.gitignore 配置
创建 .gitignore 文件防止再次提交:
# 依赖目录
node_modules/
# 构建产物
dist/
build/
# 环境变量
.env
.env.local
# 编辑器配置
.vscode/
.idea/
# 系统文件
.DS_Store
Thumbs.db
# 日志文件
*.log
gitignore
.gitignore 语法
| 语法 | 说明 | 示例 |
|---|---|---|
# | 注释 | # 这是注释 |
*.ext | 匹配所有 .ext 文件 | *.log |
dir/ | 匹配整个目录 | node_modules/ |
! | 取反(不忽略) | !important.log |
** | 匹配任意层级目录 | **/test/*.js |
参考资源
↑