git 提交了一些敏感信息,如何进行彻底删除
如果自己一个不小心的提交了一些敏感的信息到git上面,而自己的项目有可能被其他人看到,如果查看历史记录还是能看到自己提交那些文件。
那么如何彻底从历史记录中的删除这些文件呢?
可以通过下面的命令进行删除,比如删除 db.properties 文件
git filter-branch --index-filter 'git rm --cached --ignore-unmatch db.properties*' --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
也可以通过这样删除项目里面历史提交的大文件,使得使用git clone
可以更快。
注意 这样也只能删除当前的,如果有人在之前fork过代码了,那样其它人fork的分支上面还是会有这些文件的。
转载请注明作者和出处,并添加本页链接。
原文链接:
//xiaochun.zrlog.com/delete-git-sensitive-file.html