git如何清空历史commit?

266 阅读1分钟

当我新建git项目时,经常会遇到这种情况,将其他现有项目修改后然后扔到新仓库中,但commit记录经常会被一起提交,那如何清空commit记录,让仓库焕然一新?只需五步即可。

1.创建独立分支

git checkout --orphan newbranch

2.将内容提交到新分支

    git add -A  //提交所有被删除、被替换、被修改和新增的文件到数据暂存区
    git commit -m'init'

3.删除本地主分支master

git branch -D master

4.将当前分支名字改为master

git branch -m master

5.强制推送到远程仓库master

git push -f origin master

可能会遇到的问题:

  • 仓库master一般会默认是受保护分支,强制推送可能会被拒绝
    解除分支保护,待推送完成后在加入 1650853696248.jpg
  • 指针问题,推送完成后仓库指针指向原master,需要删除该指针
    WechatIMG1334.png
    git remote set-head origin -d