git 清空所有commit记录方法
说明:例如将代码提交到git仓库,将一些敏感信息提交,所以需要删除提交记录以彻底清除提交信息,以得到一个干净的仓库且代码不变
-
Checkout
git checkout --orphan latest_branch
-
Add all the files
git add -A
-
Commit the changes
git commit -am "commit message"
-
Delete the branch
git branch -D master
-
Rename the current branch to master
git branch -m master
-
Finally, force update your repository
git push -f origin master
删除不小心放到仓库里的大文件
比如日志,编译好的可执行程序
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch <your-file-name>'
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git fsck --full --unreachable
git repack -A -d
git gc --aggressive --prune=now