- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我错误地将包含密码的文件推送到我的存储库 - 仅供引用,存储库只是一个小的个人项目。
一旦我意识到密码存在,我就将文件添加到 .gitignore
并执行 git rm -r --cached <filename>
,提交并推送到 repo 。
我现在意识到密码仍然存在于历史记录中 - 删除密码的最佳方法是什么?
我读了Remove sensitive data Github 上的页面建议更改密码 - 我已经完成了 - 但我也想删除历史记录。
最佳答案
由于自包含明文密码的提交以来您已经进行了 5 次提交,因此最好的办法是在本地分支上以交互模式执行 git rebase -i
。找到您添加明文密码的提交的 SHA-1,然后键入以下内容:
git rebase --interactive dba507c^
其中 dba507c
是错误提交的 SHA-1 的前 7 个字符。
改变这个:
pick dba507c comment for commit containing clear text password
对此:
edit dba507c I have removed the clear text password
更改密码文件以删除明文,然后像这样提交结果:
git commit --all --amend --no-edit
git rebase --continue
完成 rebase ,然后通过以下方式将您的(正确的)本地分支推送到远程:
git push -f origin your_branch
您将需要强制推送 your_branch
,因为您已经重写了历史记录(通过修改密码文件)。现在您拥有了所有最新的提交,但您已经删除了明文。
关于git - 如何正确删除推送到 Git 存储库的敏感数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29741476/
我正在遍历自定义数据对象列表,并以可分页的格式将数据输出到屏幕。每个项目都需要提供编辑详细信息(重定向到另一个 View )和删除数据的能力。为此,我需要传递某种 id 来标识将要更新或删除的记录。我
我们正在使用 React-Native 构建移动应用程序,需要将一些敏感数据(例如客户端 key /密码)嵌入到移动应用程序本身中。 在安全性方面(最难进行逆向工程),标准做法是什么?数据应该在 na
我们已经知道使用 char[] 而不是 String 来处理敏感数据的建议/做法。有多种原因。一种是在不再需要敏感数据后立即清理它们: char[] passwd = passwordProvider
我有一些敏感数据想在使用后直接清除。目前,敏感数据的形式是 NSString。 NSString 在我的理解中是不可变的,这意味着我无法真正清除数据。不过,NSMutableString 似乎更合适,
我想知道如何推送到我的 Github 存储库(我需要公开该存储库,以便向雇主展示),而不显示敏感信息。我正在使用 Eclipse/Java。 我制作了一个在 Chrome 中使用 Selenium w
我是一名优秀的程序员,十分优秀!