git清空远程仓库文件和提交记录

1. 清空所有文件

先将远程仓库复制到本地,删除所有文件后提交到远程仓库。

git clone <远程仓库url>
cd <远程仓库文件目录>
rm *
git add -A
git commit -m "deleted all files"

2. 清空所有提交记录

此时远程仓库是没有文件的,通过重新初始化git,添加说明文件,强制推送到远程达到清空历史提交记录的目的,最终只有一个README.md文件和一条Initial commit的提交记录。

rm -rf .git
git init
vi README.md (添加一下初始化的说明)
git add .
git commit -m "Initial commit"
git remote add origin <远程仓库url>
git push -f --set-upstream origin master

如果强制推送的时候报错:
“remote: GitLab: You are not allowed to force push code to a protected branch on this project.”

是因为远程仓库的master分支设置了为保护分支,可以通过在远程仓库的Settings-Repository-Protected Branches将master改为unprotect,再重新执行push命令即可。

参考链接:https://stackoverflow.com/questions/41605724/how-to-get-back-a-clean-git-repository

你可能感兴趣的:(git)