如何使用Git rm cached彻底清除本地缓存并重新跟踪文件?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1002个文字,预计阅读时间需要5分钟。
清除本地缓存操作在Git中不是单一操作,而是分区场景的:
git rm –cached 用来停用已跟踪文件的版本控制
这是最常被误称为“清缓存”的真实场景:比如你把 .env 或 config.local.php 提交过,现在想让它彻底退出 Git 管理,但保留本地文件不变。
-
git rm –cached .env只从暂存区移除,不删磁盘文件;执行后必须git commit才生效 - 如果要批量处理,用
git rm -r –cached config/——注意-r是递归,别手抖多打个.导致全库脱管 - 执行后记得加进
.gitignore,否则下次git add .会重新把它抓进去 - 这个操作会影响协作:别人
pull后,该文件不会被删除,但也不会再被 Git 跟踪更新 —— 他们得手动备份再删,否则git status会一直报 “deleted”
git reset HEAD 用来撤销刚 git add 错的文件
你只是手快把不该暂存的文件 add 进去了,还没 commit,这时缓存里多了一堆东西,但工作区完好。
本文共计1002个文字,预计阅读时间需要5分钟。
清除本地缓存操作在Git中不是单一操作,而是分区场景的:
git rm –cached 用来停用已跟踪文件的版本控制
这是最常被误称为“清缓存”的真实场景:比如你把 .env 或 config.local.php 提交过,现在想让它彻底退出 Git 管理,但保留本地文件不变。
-
git rm –cached .env只从暂存区移除,不删磁盘文件;执行后必须git commit才生效 - 如果要批量处理,用
git rm -r –cached config/——注意-r是递归,别手抖多打个.导致全库脱管 - 执行后记得加进
.gitignore,否则下次git add .会重新把它抓进去 - 这个操作会影响协作:别人
pull后,该文件不会被删除,但也不会再被 Git 跟踪更新 —— 他们得手动备份再删,否则git status会一直报 “deleted”
git reset HEAD 用来撤销刚 git add 错的文件
你只是手快把不该暂存的文件 add 进去了,还没 commit,这时缓存里多了一堆东西,但工作区完好。

