当前位置: 首页 > news >正文

大连网站建设主页手表网站建设策划书

大连网站建设主页,手表网站建设策划书,什么网站做ppt赚钱,北京搜索关键词优化Github - 记录一次对“不小心包含了密码的PR”的修复 前言 和好朋友一起开发一个字节跳动青训营抖音电商后端(now private)的项目,某大佬不小心把本地一密码commit上去并提了PR。 PR一旦发出则无法被删除,且其包含的commit也能被所有能看到这个仓库的…

Github - 记录一次对“不小心包含了密码的PR”的修复

前言

和好朋友一起开发一个字节跳动青训营抖音电商后端(now private)的项目,某大佬不小心把本地一密码commit上去并提了PR。

PR一旦发出则无法被删除,且其包含的commit也能被所有能看到这个仓库的人看到。虽然是本地一密码,泄露了也不是很严重,但最好还是隐藏一下这个信息。

思路

思路为:

  1. 强制重写本次PR的commits
  2. 删除评论、Action等所有可能带有“密码泄露sha”的记录
  3. 加强安全防范

其他人无法得知密码泄露的那次commit的sha,也就无法找到泄露的密码。

实操

强制重写本次PR的commits

其实PR中包含“密码commit”不用惊慌,重写包含密码commit的源分支,与协作者沟通并强制push即可。

但是由于误操等原因,PR被close并且源分支被删除了。于是思路变成了:恢复源分支 -> 重新打开PR -> 强制重写源分支

这里需要补充一丢丢Github PR的知识:

Pull Request(PR)通常是开发者想将一个分支(源分支)合并到另一个分支(目标分支)从而提交的更改请求。

a分支对b分支的PR在同一时间只能存在一个(关闭的PR除外),提出PR后合并之前任何对a分支的更改都将同步反映到PR上,直到PR被合并或关闭为止。

一个PR被强制关闭后,想要重新打开的前提是a分支依然存在并且还是提PR时候的a分支(另创分支并起名为a、被关闭PR中的commit强制重写过的a分支不算)。

问题是远端(Github)a分支被删除了,还没拉取到本地过,还能恢复这个a分支到PR关闭时的状态(或在此状态上新增了commit的状态)吗?当然可以,这就是Git:

git fetch origin pull/<PR编号>/head:<分支名>
git switch <分支名>

之后就可以push到远端,重新开启PR,本地回滚,隐匿密码,重新commit,强制push到远端,关闭PR并删除远端分支(可选)了。

git push --set-upstream origin <分支名>
gh pr reopen 30
git reset HEAD^
vim config.toml
git add xxx
git commit -s -m "xxx"
git push --force
gh pr close 30 -c "历史已重写"
git push origin --delete <分支名>

删除“密码泄露sha”的出现位置

虽然带有密码的commit被删除了,不会被合并到各个分支中了,变成了“游离”的commit。

但是其他人知道这个commit的sha的话,还是能够访问。

也许Github服务器上什么时候会在git gc的时候清除这个commit,但暂未寻找相关文档,是否会发生以及发生具体时间不详。

但是所幸,commit的message以及action的记录都是可以强制删除的,注意GitGuardian等即使修改了历史评论,但github上仍然可以看到历史评论,记得删除历史评论。

加强安全防范

最好的办法就是在本地仓库创建一个预提交的钩子,但是需要每个Collaborator自己在本地分别安装,最少也要执行一下git config --local core.hooksPath xxx钩子文件命令。

然后提交的时候最好不要git add .git add *之类的,最好一个一个看看。

其次就是使用一些密码泄露检测工具,放在文章结尾部分了。

好用的密码泄露检测工具可以一旦密码泄露立即报警,若不慎泄露则需要和其他成员沟通并强制push,必要的话可能需要更改密码。

End

推荐一个第三方秘密检测工具GitGuardian,检测功能强大,能根据代码语境检测。

自荐一个简单的密码检测BotLet Secret Monitor,支持自定义密钥信息,普通的commit在push后也会触发检测。

The Real End, Thanks!

原创不易,转载经作者同意后请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/145469338

http://www.yayakq.cn/news/971177/

相关文章:

  • wordpress会员权限浙江嘉兴seo网站优化推广
  • 个人网站怎么做联盟推广大连建设招标网
  • 网址站网站源码平台
  • 建安证查询网站异构国际设计
  • 江津哪里找做网站的养殖场网站源码
  • 网站建设 发短信文案塘沽网吧
  • 网站建设方案云盘京东网页设计实训报告
  • 网站建设源码数字营销专业
  • 做网站的流程 优帮云企业解决方案和应对措施
  • 岳阳网站开发商城宝塔怎么安装wordpress
  • 网站开发包含的项目和分工注册传媒公司需要多少钱
  • 太原做网站个人品牌vi设计理念
  • 代刷网站app制作教程软件排名工具
  • 招远做网站联系电话网站设计师发展前景
  • 网站开发与设计培训廊坊网站群建设
  • 如何建立自己的企业网站文化展厅的设计方案
  • 手机wap网站大全营销型网站内容
  • 六安本地网站深圳公司视频制作
  • 教育类网站前置审批申请免费网站建设
  • 网站开通流程百度知道免费提问
  • 网站代码需要注意什么问题吗绍兴市住房与城乡建设厅网站
  • 网站开发技能有哪些网站设置黑白色
  • 网站运营优化推广网站首页导航代码
  • 做网站公司选智投未来宝安中心医院口腔科
  • 建材网站方案适合做书籍资源的WordPress主题
  • 好看的创意网站设计网站建设设计方案书
  • 网站管理助手ftp新型网站建设
  • 上海网站改版软件工程就业方向及薪资待遇
  • crm网站推荐郴州北京网站建设
  • 软件下载网站排行做网站需要掌握什么