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

✅ 搞定!

相关推荐
智算菩萨3 小时前
GitHub使用全教程:从入门到精通的完整指南
github
CoderJia程序员甲16 小时前
GitHub 热榜项目 - 日榜(2026-03-25)
人工智能·ai·大模型·github·ai教程
MicrosoftReactor17 小时前
技术速递|底层机制:GitHub Agentic Workflows 的安全架构
安全·ai·github·agent·安全架构
CoovallyAIHub18 小时前
AAAI 2026 | AnoStyler:文本驱动风格迁移实现零样本异常图像生成,轻量高效(附代码)
算法·架构·github
CoovallyAIHub18 小时前
500M参数就能跑视觉语言模型?Moondream把VLM塞进了边缘设备
算法·架构·github
徐小夕19 小时前
一个普通Word文档,为什么99%的开源编辑器都"认怂"了?我们选择正面硬刚
vue.js·后端·github
Mahut20 小时前
从零构建神经影像可视化库:neuroviz 的架构设计与实现
前端·javascript·github
m0_6948455721 小时前
Docker 从入门到实践教程:docker_practice 完整学习指南
运维·服务器·docker·容器·云计算·github