百科问答小站 logo
百科问答小站 font logo



如何删除Git里来自pull request的commit中包含的个人敏感信息? 第1页

  

user avatar   flatlined 网友的相关建议: 
      

假如你把敏感信息推送到 master 分支上了。

你可以先备份本地代码,然后回滚到敏感信息 commit 之前的一次 commit:

       git reset --hard HEAD~1      

然后新建一个分支,比如是 new-master ,然后把代码推送到这个分支

       git checkout -b new-master git push origin new-master:new-master     

然后把主分支删掉,然后重建出来:

       git push origin --delete master    git branch -d master              git checkout -b master             git push origin master               

然后把代码推上去,再把 new-master 给删除掉。

此外,你如果想把其他的提交历史迁移过来,可以利用类似的方式。先不做 reset 操作,重建 master 分支后,从 new-master 使用 cherry-pick 将没有关联到隐私信息的内容拉过来。


如果你是把代码推送到 GitHub 上,想把 log 删除掉,那可以联系 GitHub 的管理员。




  

相关话题

  用 Git 一定要用命令行吗?用命令行一定高贵吗? 
  如何看待 GitHub 新推出的 Large File Storage (LFS)? 
  996.icu 关注者多又能怎样呢?会有实际的变化发生么? 
  中国公司在 GitHub 上有哪些比较出彩的开源项目? 
  如何写好 Git commit log? 
  如何理解 Git 的分布式? 
  IDE 有必要集成 Git 吗? 
  程序员如何有效、愉快的使用 GitHub? 
  Git算不算程序员的必备技能? 
  哪些特性让你觉得 SVN 比 Git 更好用? 

前一个讨论
针对留学生的心理健康问题,可有相关的应对措施?
下一个讨论
中国学者在 3 月 30 日《细胞》杂志上发表论文,首次将神经退行性疾病基因敲入猪,意义有多重大?





© 2025-06-18 - tinynew.org. All Rights Reserved.
© 2025-06-18 - tinynew.org. 保留所有权利