如何将Github上已有项目移除提交记录后重新上传至Github
移除GitHub项目所有提交记录的可行方案
你可以通过Git命令直接操作本地仓库后推送,既不会保留原有提交记录,也不需要手动重新上传所有文件,操作步骤如下:
- 首先进入本地已克隆的项目根目录
- 新建无任何提交历史的孤儿分支
git checkout --orphan latest_branch - 将所有项目文件加入暂存区
git add -A - 提交当前所有内容为仓库的第一个新提交,提交信息可自行修改
git commit -am "init: 项目初始化提交" - 删除原有存在历史记录的主分支,若你的原主分支名为
master,请将下方的main替换为mastergit branch -D main - 将当前新建的孤儿分支重命名为主分支
git branch -m main - 强制推送新的主分支到GitHub远端仓库,覆盖原有内容
git push -f origin main - (可选)执行本地Git垃圾清理,删除所有旧提交的残留对象,释放本地存储空间
git gc --aggressive --prune=all
注意:操作前务必备份完整的项目文件夹,强制推送会永久清空远端仓库的所有提交记录,不可恢复。如果你的仓库开启了主分支保护规则,需要先进入GitHub仓库设置页的「分支」选项,暂时关闭主分支的保护限制后再执行推送操作,推送完成后可重新开启保护。
内容的提问来源于stack exchange,提问作者Alex B
相关产品推荐
相关产品推荐

