清除 GitHub 历史记录的隐私信息
清理 github 敏感信息
有的时候我们在提交到github上的内容不小心含有敏感代码,比如密码,公司的服务器IP等。这个时候就要通过一些手段清除这些信息。
GitHub官方方案比较码放,所以推荐使用 BFG Repo-Cleaner ,更加简单、易操作,但它可以修改所有的提交记录,也要小心使用。
下面通过例子演示如何清理敏感信息
背景
仓库名:Space
泄露信息的文件的文本内容
conf={
'password': '1234567'
'SCKEY': '3.141592653'
}
目标:需要将 1234567 和 3.141592653 清除
准备工作
-
先做好备份!!!
-
下载好BFG工具后重命名为 bfg.jar
-
打开本地仓库的父级文件夹,并将 bfg.jar 复制到该文件夹中
-
创建
passwords.txt
文件,将需要抹除的信息填入,一条信息一行。本例中填:1234567 3.141592653
清除步骤
- 在父级文件夹唤起 cmd 输入命令:
java -jar bfg.jar --replace-text passwords.txt Space
- 在仓库的文件夹唤起 cmd 输入命令:
git reflog expire --expire=now --all && git gc --prune=now --aggressive
- 强制更新到仓库(会覆盖原文件):
git push -f <origin> <branch>
Tips:
branch 可以通过命令 git branch -a
查看,带 *
即为当前的分支
结果
conf={
'password': ''
'SCKEY': ''
}