git倉庫永久刪除大文件

1、查到5個最大的文件

git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"

2、將查到的一個大文件刪除

git filter-branch --force --index-filter 'git rm -rf --cached --ignore-unmatch 大文件名' --prune-empty --tag-name-filter cat -- --all

3、徹底從本地刪除

rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now

4、覆蓋gitlab

git push origin --force 'refs/heads/*' 
​
git push origin --force 'refs/tags/*' 
​
git push origin --force 'refs/replace/*' 

如果git命令報錯 “no matching host key type found. Their offer: ssh-rsa,ssh-dss”,則在用戶目錄下的 .ssh文件夾下新建一個 config 文件,添加:

Host *
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章