idealclover - 删除
type: channel
link: https://www.idealclover.top/tag/删除/
items: 删除 Git/GitHub 中的敏感数据
items: 痕迹抹除计划

删除 Git/GitHub 中的敏感数据
type: item
date: 2020-03-06T22:27:00+08:00
description: AI 摘要：本文介绍了如何在Git/GitHub中删除敏感数据。首先，使用BFG工具替代git filter-branch命令，安装BFG和JRE。然后，将需要删除的文件在本地进行一次commit，接着运行BFG命令删除文件或文件夹。最后，使用force push将更改推送到远程仓库，并添加.gitignore以防止类似问题再次发生。展开Powered by AISummary and MoonShot KimiChat.今天整理之前的 GitHub 项目，发现自己的一个项目不小心把服务器密钥暴露出来了。幸好是个 private 的库。就着手准备把这个文件删除。但是在 Git 里删文件似乎不是个容易的事情——由于 Git 会保留历史与版本回溯，所以需要将需要删除的文件在之前的版本中也一并删除掉w据说正常来讲需要使用 git filter-branch 命令，但咱也不是 git 大佬，接触新命令也挺陌生的，而且据说这个命令一来繁琐，二来当需要修改的文件较大/较多时，执行时间堪忧。好在有一个叫做 BFG 的工具，提供了一种更快、更简单的 git filter-branch 替代方法，用于删除不需要的数据。简单踩了一下坑，做了一下步骤记录。1. 安装 BFGBFG 的官网在 这里，下载地址在 这里另外由于这个是用 java 写的，所以需要安装 JRE，下载地址在 这里。不过开发者应该都有装吧...2. 删除文件需要先将需要删除的文件进行删除并在本地进行一次 commit，才能在 BFG 中对文件进行删除。否则会提示 These are your protected commits, and so their contents will NOT be altered 而无法彻底清除。3. 运行 BFG万事俱备，准备删除w删除文件的命令：java -jar bfg的路径/bfg-1.13.0.jar --delete-files 需要删除的文件删除文件夹的命令：java -jar bfg的路径/bfg-1.13.0.jar --delete-folders 需要删除的文件夹4. commit 并 push 到远端这里由于删除文件更改了之前的提交历史，所以必须 force pushgit push --force之后就可以去 GitHub 上检查一下文件是否删完了w5. 添加 .gitignore最后不要好了忘了伤疤忘了疼呦~ 记得把相关文件添加到 .gitignore 里w用 Git 还是要谨慎一点哦参考链接BFG Repo-Cleaner by rtyley从仓库中删除敏感数据 - GitHub 帮助清理 git 仓库太繁琐？试试 bfg！删除敏感信息删除大文件一句命令搞定（比官方文档还详细的使用说明） - walterlv

痕迹抹除计划
type: item
date: 2019-05-28T20:51:00+08:00
description: AI 摘要：本文讨论了作者对数据掌控的偏执，以及对互联网公司数据删除的担忧。作者提到，即使账号被删除，网友仍能找到蛛丝马迹，因此选择为互联网公司提供最少的数据。作者倾向于自建功能，如笔记、个人心情墙等，或选择遵循欧盟GDPR的服务。作者关闭了Web Archive爬虫，以确保没有可靠的“我一定在这个网站上说过些什么”的痕迹。作者强调，在自己的天地里，数据由自己掌控，喜欢这种掌控感。展开Powered by AISummary and MoonShot KimiChat.我应该是不太会发微博了，自己的牢骚都会偷偷发在自己的网站上，各个平台中的痕迹包括点赞也会定期尽可能删除。我发现我已经陷入到一种对数据近乎偏执的掌控感。一些公众人物会被网友扒出几年前的帖子，言论甚至是点赞，被拿着显微镜的网友曝出各种不太“正确”的言论。而更可怕的是，在某起网友曝某知名朋友贴吧言论的过程中，即使是账号被删除，网友依旧能找到其在多年前的蛛丝马迹。一个显而易见的真相是，互联网公司永远不会把你的信息彻底删除，尤其是中国的互联网公司。而其中一些好的会让别人访问不到被删除的信息，而一些坏的甚至会拿这些信息卖钱。所以我宁愿为这些互联网公司提供最少的数据，也不希望我丧失对自己某些过去的删除的权力，对，删除权。能够自建的功能，比如笔记，个人心情墙，密码库，自己都会选择自建；如果无法自建的，也会尽可能选择遵循欧盟 GDPR 的网站或公司所提供的服务。当然，这样也并不意味着我所删除的数据就真的被删除了。至少我的云服务提供商那里会有一份我的数据；但自建意味着如果想要提取我的资料，需要额外付出更高的代价，而非在公司的数据库中检索一下就可以批量地找到。因为我的网站关闭了 Web Archive 的爬虫，Web Archive 也不会对我的网站进行存档。这也就意味着并不会有可靠的“我一定在这个网站上说过些什么”的痕迹，我也不应当为漫长时间前幼稚的自己所付出代价，如果有，也应当是我可以 delete 掉的。在自己的天地里，数据都是由自己掌控的，而我喜欢这种掌控感。