Git 移除已追踪文件/文件夹

date
Jan 8, 2025
slug
how-to-remove-tracked-files-from-git
status
Published
tags
Git
summary
详解如何优雅地从 Git 仓库中移除已被追踪的文件,并介绍相关的最佳实践和注意事项。
type
Post

问题背景

在项目开发中,经常会遇到一些不应该被 Git 追踪的文件被意外提交的情况,比如:
  • IDE 配置文件(.vscode、.idea 等)
  • 编译生成的文件夹(node_modules、dist 等)
  • 本地配置文件
  • 日志文件

解决步骤

1. 创建或更新 .gitignore

首先确保在 .gitignore 文件中添加需要忽略的文件规则,例如:

2. 从 Git 缓存中删除文件

使用以下命令从 Git 缓存中删除文件,但保留物理文件:

3. 提交更改

4. 推送到远程仓库

注意事项

  1. git rm --cached 只会取消 Git 追踪,不会删除物理文件
  1. 如果要同时删除物理文件,去掉 -cached 参数即可
  1. 删除文件夹时必须使用 r 参数
  1. 其他团队成员需要拉取最新代码以同步更改
 

© Cheney Wang 2024 - 2025