删除GitHub上的历史commit

admin 2023年5月8日00:14:04评论31 views字数 830阅读2分46秒阅读模式

背景

由于之前的加水印脚本存在问题,在对同一张图片进行加水印时,会有一定的概率产生不一样 md5 的图片,在 git 提交的时候,就认为被修改了,从而被提交的 github 仓库中,如此反反复复,到现在已经有 11 个 G 大小了;今天把水印脚本重写了一下,解决了上述问题,所以准备给之前的垃圾提交清理了,让我的博客变成一个“新库”。

删除GitHub上的历史commit
blogSize

过程

创建并切换到孤儿分支(该分支与现有分支无关,完全独立)

git checkout --orphan d4m1ts

当前文件夹下的所有内容都被默认添加到暂存区,直接 commit 提交即可

git commit -m "更新水印,从头做起"

删除原来的分支(默认是master,也有可能是main

git branch -D master

把当前分支重命名为主分支

 git branch -m master

强行推送到远程仓库

git push -f origin master
删除GitHub上的历史commit
push成功

效果

历史 commit 被清除

删除GitHub上的历史commit
github

重新clone,也是正常大小,不携带历史 commit

删除GitHub上的历史commit
重新clone

风险

  1. 代码丢失: 删除历史 commit 可能会导致一些代码丢失,这可能会影响到项目的完整性和可用性。

  2. 团队合作受影响: 如果多个人在同一个分支上工作,删除 commit 可能会影响到其他人的工作。如果其他人使用被删除的 commit 进行工作,他们可能会遇到错误,这可能会导致协作的停滞和沟通的困难。

  3. Git 历史记录混乱: 删除 commit 可能会导致 Git 历史记录变得混乱不清。如果您不小心删除了重要的 commit,您可能会失去对项目演变的完整历史记录。这可能会导致对项目的分支、合并和代码审查的跟踪困难。

  4. 代码库中的依赖关系受到影响: 如果项目中的其他组件依赖于被删除的 commit,删除 commit 可能会导致依赖关系的破坏。这可能会导致其他组件无法正常工作,或者可能需要花费大量的时间来修复问题。

- END -


原文始发于微信公众号(初始安全):删除GitHub上的历史commit

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年5月8日00:14:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   删除GitHub上的历史commithttps://cn-sec.com/archives/1714935.html

发表评论

匿名网友 填写信息