Git删除单个文件所有记录

Github上经常出现传输了错误文件的问题,如密码手机等隐私内容,需要彻底删除所有提交记录,用下面这段代码就可以了。

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch 删除文件的相对路径' --prune-empty --tag-name-filter cat -- --all

git push origin master --force

rm -rf .git/refs/original/

git reflog expire --expire=now --all

git gc --prune=now

git gc --aggressive --prune=now  

不记得这段代码从哪复制了,感谢原作者的无私奉献,(*/ω\*)~