我的初始提交包含一些日志文件。我已将*log
添加到我的.gitignore
,现在我想从我的存储库中删除日志文件。
git rm mylogfile.log
将从存储库中删除文件,但也将从本地文件系统中删除它。
如何在不删除文件的本地副本的情况下从存储库中删除此文件?
对于单个文件:
git rm --cached mylogfile.log
对于单个目录:
git rm --cached -r mydirectory
要从 repo 中删除整个文件夹(如 Resharper 文件),请执行以下操作:
git rm -r --cached folderName
我已经提交了一些 resharper 文件,并且不希望这些文件持续存在于其他项目用户。
您还可以根据. gitignore 从存储库中删除文件,而不从本地文件系统中删除它们:
git rm --cached `git ls-files -i -X .gitignore`
或者,在 Windows Powershell 上:
git rm --cached $(git ls-files -i -X .gitignore)