如何使用 git 删除不再跟踪的文件
Posted on Wed, 25 Dec 2024 13:47:15 +0800 by LiangMingJian
如何使用 git 删除不再跟踪的文件
需求
在初始化 git 仓库的时候,如果没有创建.gitignore
文件来过滤不必要提交的文件,后来却发现某些文件不需要提交,但是这些文件已经被提交了,这时候创建.gitignore
文件忽略这些文件时,发现 ignore 的规则对那些已经被 track 的文件无效。
实际上.gitignore
文件只会忽略那些没有被跟踪的文件,也就是说 ignore 规则只对那些在规则建立之后被新创建的新文件生效。那么如何使.gitignore
文件的规则对于那些已经被 track 的文件生效呢?
删除 track 的文件 (已经 commit 的文件)
git rm 要忽略的文件
(如果目录下全是不需要的文件,使用 git rm -r –cached 命令)git commit -a -m "删除不需要的文件"
在.gitignore
文件中添加忽略规则
- 在
.gitignore
文件中添加 ignore 条目, 如:some/path/some-file.ext
- 提交
.gitignore
文件:git commit -a -m "添加ignore规则"