git删除历史提交中的某些文件

要从所有提交中删除PDF文件并保留本地文件,你需要使用git filter-repo命令或git filter-branch命令来重写历史。请注意,这将修改提交历史,因此需要小心操作,确保在执行之前备份数据。

以下是使用git filter-repo命令的示例,假设要删除所有PDF文件:

bash 复制代码
git filter-repo --path file.pdf --invert-paths

如果你要删除多个文件,可以使用逗号分隔,例如:

bash 复制代码
git filter-repo --path file1.pdf,file2.pdf --invert-paths

如果你希望使用git filter-branch命令,以下是一个示例:

bash 复制代码
git filter-branch --index-filter 'git rm --cached --ignore-unmatch file.pdf' --prune-empty

在每个命令执行后,你需要使用git push --force来将更改推送到远程仓库。请记住,在重写提交历史时要小心,确保你理解操作的影响。最好在执行之前备份仓库数据。

相关推荐
vibecoding日记14 小时前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
Elasticsearch1 天前
通用表达式语言 ( CEL ): CEL 输入如何改进 Elastic Agent 集成中的数据收集
elasticsearch
武子康1 天前
大数据-236 离线数仓 - 会员指标验证、DataX 导出与广告业务 ODS/DWD/ADS 全流程
大数据·后端·apache hive
程序员小崔日记1 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger2 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
武子康2 天前
大数据-235 离线数仓 - 实战:Flume+HDFS+Hive 搭建 ODS/DWD/DWS/ADS 会员分析链路
大数据·后端·apache hive
DianSan_ERP3 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
够快云库3 天前
能源行业非结构化数据治理实战:从数据沼泽到智能资产
大数据·人工智能·机器学习·企业文件安全
AI周红伟3 天前
周红伟:智能体全栈构建实操:OpenClaw部署+Agent Skills+Seedance+RAG从入门到实战
大数据·人工智能·大模型·智能体