我意外地将一个文件(一个巨大的傻瓜文件)上传到我的git存储库,当我注意到它使用git rm the_fool_file
“删除”
然后我看到该文件仍在存储库中,但是它已从本地删除。
如何从服务器中删除并明确删除它?
提前致谢。
我也试过
git filter-branch --tree-filter 'rm -f myfile' HEAD
得到
WARNING: Ref 'refs/heads/master' is unchanged
文件不在头,它已被删除
答案 0 :(得分:3)
我想删除它,因为它很大并且不属于项目,它是意外上传的
然后,最简单的方法是使用BFG Repo-Cleaner
删除大于1兆字节的所有blob:
$ bfg --strip-blobs-bigger-than 1M my-repo.git
这将在当前提交之前处理所有提交。
但别忘了然后跑:
git gc --prune=now --aggressive
(详见“Git repo still huge after large files removed from repository history”)