有時候,我們誤提交了某些隱私文件,使用
git rm xxx
刪除后,其實版本庫中是有歷史記錄的,想要刪除這些記錄,但是又不想刪除倉庫,重建來提交。那么就想辦法刪除歷史記錄了。
我們當然不能直接刪除.git文件夾,這將導致git存儲庫出現不可預知的問題。
要刪除所有提交歷史記錄,但將代碼保持在當前狀態,可以按照以下方式安全地執行此操作:
-
創建並切換到
latest_branch
分支git checkout --orphan latest_branch
-
添加所有文件
git add -A
-
提交更改
git commit -am "刪除歷史版本記錄,初始化倉庫"
-
刪除分支
git branch -D master
-
將當前分支重命名
git branch -m master
-
強制更新存儲庫
git push -f origin master
解決方案來自:如何刪除GitHub中的所有提交歷史記錄?