清除git历史commit记录
date
Apr 16, 2022
slug
clean-git-commit-history
status
Published
tags
Git
summary
如何清除git历史commit记录
type
Post
背景
最近需要使用原有的一些项目作为新项目的模版,但是又不想之前的git commit 记录继续保留,因此需要将项目之前的git 所有历史提交记录清除。
方案:
1. 新建分支
语法:
git checkout --orphan <new_branch>使用
—orphan 表示创建一个 “干净” 分支,相当于从当前分支切一个新的分支出来,但是不保留任何历史提交记录。 new_branch 为新分支名,注意别于之前的分支有重名。2. 添加所有文件
git add .3. 提交文件
git commit -m "提交说明"4. 删除原有主分支(master)
git branch -D master5. 将当前分支重命名为master
git branch -m master6. 将代码推送到远程仓库
git push -f origin master这里需要注意,有些仓库对master分支又暴露,不允许强制推送,因此需要在仓库设置里面将分支保护关掉才可以继续推送。
另外,推送之前,可以使用
git remote -v 查看关联的远程仓库的信息,因为远程仓库可以设置别名,不一定是 origin 。以上就是大致的步骤流程。