window环境使用git-filter-repo

本地环境git >= 2.36.0 python3 >= 3.6

1. 找到你下载的文件

你从 GitHub 下载解压后,里面有一个 没有后缀的文件:

复制代码
git-filter-repo

把它复制出来。

2. 粘贴到 你要清理的项目根目录

比如你的项目是:

复制代码
D:\my-project\

就把 git-filter-repo 粘贴到这里:

复制代码
D:\my-project\git-filter-repo

3. 打开 Git Bash,进入项目目录

复制代码
cd D:/my-project

二、Windows 上直接使用的命令(复制就能跑)

最常用:清理 Git 历史里的超大文件(瘦身 .git)

复制代码
python git-filter-repo --strip-blobs-bigger-than 1M --force

如果你要删除某个特定文件

复制代码
python git-filter-repo --path 大文件名字 --invert-paths --force

如果你要拆分仓库

复制代码
python git-filter-repo --subdirectory-filter 文件夹名

三、如果提示 python 不是命令,换成这个

复制代码
py git-filter-repo --strip-blobs-bigger-than 1M --force

四、使用前必须做(防止出错)

备份项目(非常重要)

复制代码
cp -r . ../my-project-backup

如果提示工作区不干净

复制代码
git add .
git commit -m "tmp"

五、清理完成后,推送到远程

git-filter-repo 在重写仓库历史时,默认会清空所有远程仓库配置(这是它的安全机制,防止你误操作覆盖远程仓库),所以你现在的本地仓库和 GitHub/Gitee 等远程仓库的连接被断开了。

需要重新关联仓库

复制代码
git remote add origin 你的仓库地址 git remote add origin https://github.com/你的用户名/你的仓库名.git

git remote add origin 原仓库地址

git remote add upstream 上游仓库地址

git push -f origin main

超级总结

你从 GitHub 拉取下来之后,只需要做这一件事:

把 git-filter-repo 复制到项目目录

打开 Git Bash

运行:

复制代码
python git-filter-repo --strip-blobs-bigger-than 1M --force

✅ 搞定!

相关推荐
miofly1 小时前
Karpathy:75%人口未接触LLM,约5000人可用的内部系统已让数千智能体协作数周
开源·github
zjh10241 小时前
和 AI 一起写了个 MCP 客户端,结果最难的不是协议
github
溪语流沙2 小时前
【Web全栈进阶】OAuth实战——GitHub第三方登录
前端·python·github
逛逛GitHub2 小时前
最近逛 GitHub ,挖到 3 个给力的开源项目,第一个比较硬核。
github
u1301302 小时前
GitHub 热榜项目:周榜(2026-10-11)
人工智能·驱动开发·github
WindrunnerMax2 小时前
以轻量 LoopAgent 替代 RAG 实现文档检索
人工智能·架构·github
做运维的阿瑞2 小时前
利用GitHub配置镜像加速,解决 Docker镜像拉取问题
运维·docker·容器·github
怕浪猫3 小时前
AI Agent 的安全怎么保障?面试最后一关的终极问题
算法·面试·github
m4Rk_3 小时前
【论文阅读】Agent 记忆机制(97):MCMA——让 Agent 学会如何抽象记忆,实现跨任务经验迁移
论文阅读·人工智能·学习·开源·github