正文
清除 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> <master>
结果
conf={
'password': ''
'SCKEY': ''
}
下载好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> <master>
结果
conf={
'password': ''
'SCKEY': ''
}
conf={
'password': ''
'SCKEY': ''
}