如何仅删除本地文件但保留远程Git仓库中的对应文件?
解决方法
你之前的操作之所以会删除远程文件,是因为git rm --cached -r directory是把指定目录从Git的跟踪列表里移除,然后你提交并推送这个变更到远程,远程仓库会同步这个“停止跟踪”的操作,最终就把远程的对应文件也删了——这和你想要的完全相反。
要实现只删本地文件、保留远程文件的需求,根本不需要改动Git的跟踪状态,直接按下面步骤做:
- 直接在本地文件管理器里删掉你不需要的目录和文件
- 要是不想之后Git再提示这些文件“已删除”,把它们的路径加到
.gitignore文件里,保存后Git就会忽略这些文件的状态变化 - 别执行任何
git rm、git commit、git push操作——这些操作会把本地的删除同步到远程仓库,完全是你要避免的行为
简单说:你只需要本地物理删除文件,不用告诉Git这件事,远程仓库就不会有任何变化。
内容的提问来源于stack exchange,提问作者Shanel Perera
相关产品推荐
相关产品推荐

