Git仓库中待删除的example目录,删除后如何避免被Git重建?
解决Git追踪的example目录删除后不被重新创建的问题
当你删除了被Git追踪的collection/example目录后,要避免Git后续重新创建它,可以用以下几种方法:
1. 移除本地Git对该目录的追踪
执行以下命令,把collection/example从Git的追踪列表中移除(不会删除本地文件,你已经删了也没关系):
git rm -r --cached collection/example
然后提交这个变更:
git commit -m "停止追踪example目录"
之后Git就不会再管这个目录,后续执行git pull或git checkout时,不会自动恢复这个目录。
2. 结合.gitignore彻底忽略该目录
如果单纯移除追踪还不够,怕后续误操作恢复,就把该目录加入.gitignore:
- 编辑项目根目录的
.gitignore文件,添加一行:collection/example/ - 提交
.gitignore的变更:git add .gitignore && git commit -m "忽略example目录"
注意:如果之前该目录已经被Git追踪过,必须先执行第一步的
git rm --cached,否则.gitignore不会生效。
3. 基于原仓库fork后移除目录(适合长期使用)
如果原仓库需要保留example目录给新用户,你可以自己fork仓库,然后在自己的fork仓库里彻底删除该目录:
git rm -r collection/example git commit -m "彻底删除example目录" git push
之后克隆你自己的fork仓库,就不会出现example目录,也不用担心后续同步时被恢复。
补充说明
Git本身不会自动重新创建已删除的追踪目录,只有当你执行了同步远程状态的命令(比如git pull、git checkout指定远程分支的该目录)时,才会从远程拉回这个目录。上面的方法都是从阻止Git同步该目录的角度,彻底解决问题。
内容的提问来源于stack exchange,提问作者groovenectar
相关产品推荐
相关产品推荐

