欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > git status 耗时

git status 耗时

2025/12/14 12:30:49 来源:https://blog.csdn.net/leslie3350/article/details/144792889  浏览:    关键词:git status 耗时

某个git库每次status一下就是半小时起步,gc后还是没有效果,后来排查记录发现某笔记录提交几百G的冗余文件,虽然revert了,但是还是存在库中,遂如下清理:

# 查找大文件
git verify-pack -v .git/objects/pack/pack-*.idx | sort -k 3 -g | tail -10# 根据HSA值找到对应文件名
git rev-list --objects --all | grep xxxxxxxxx# 前两条命令的组合
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/pack-*.idx | sort -k 3 -n | tail -10 | awk '{print$1}')"# 强制删除YOU-FILE-NAME,非常耗时
# filter-branch:  重写Git仓库中的提交
# --index-filter: 指定后面命令进行删除
# --all:          所有分支的提交(位于/refs下的所有引用)
git filter-branch --force --prune-empty --index-filter "git rm -rf --cached --ignore-unmatch YOU-FILE-NAME" --tag-name-filter cat -- --all# 彻底清除
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git fsck --full --unreachable
git repack -A -d
git gc --aggressive --prune=now# 强制推送
git push --force --all

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词