删除Github库中带有敏感文件的历史版本

作者: 云中布衣   分类:  学习笔记    热度: (394℃)   时间: 2019-5-8 17:15   标签: #git  #GitHub    

在Github使用的过程中,难免会遇到误操作,使得一些本来应该在本地的敏感文件暴露在Github公开库中,即使在本地删除后,再重新commit,push上传,通过Github仓库中的历史版本信息,依旧可以获取到已经暴露的敏感文件。举个例子:如下图所示,假如敏感文件包含在版本描述为“始于CAIDA,而不止于CAIDA!”的版本里面,本地删除后再重新commit,push上传的版本描述为“Caida is Everything!”,这么做肯定是无法解决问题的。

gitlog.JPG

正确的做法应该是,先在本地移动HEAD指针至包含敏感文件版本的前一个版本(可通过git log命令查询需要回退版本的版本号),完事之后再重新commit,push到Github库中。

git reset --soft 45fd0fd22a595aa9cda39a3299853aae3af6a478  //回退至指定版本(只移动HEAD指针)
git add .
git commit -m "Caida is Everything!"  //重新commit
git pull  //保持和Github网络库不包含敏感文件的版本同步
git push origin master  //重新push即可
<由云中布衣整理于2019年5月8日>
56.8K

评论:

新闻头条 Say:
文章不错非常喜欢

2019-05-21 00:18


云中布衣
2019-05-22 09:48
@新闻头条:谢谢,常来
网站建设 Say:
已阅

2019-05-13 11:26


云中布衣
2019-05-15 15:55
@网站建设:谢谢,常来

发表评论:

© 云中布衣 2015-2019 | Driven by EMLOG  | SiteMap | RunTime: 10.25ms RSS  |   | TOP

文章数量【283】 评论数量【368】 稳定运行【1581天】

Visitor IP Address【3.92.92.168】

Email:ieeflsyu#outlook.com