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来将更改推送到远程仓库。请记住,在重写提交历史时要小心,确保你理解操作的影响。最好在执行之前备份仓库数据。

相关推荐
QCC产品中心2 小时前
MiniMax Agent 接入实测:企业查询、股权穿透与 UBO 识别(附 Prompt 模板)
大数据·mcp·金融/非金融
vivo互联网技术2 小时前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
Elasticsearch3 小时前
热力直达:使用 Elasticsearch 插件将 ES|QL 引入你的 Grafana 仪表板
elasticsearch
小猿姐10 小时前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
SelectDB19 小时前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
ApacheSeaTunnel1 天前
当多表数据涌入,Apache SeaTunnel 如何巧妙化解主键冲突?
大数据·开源·数据集成·seatunnel·技术分享·数据同步
A_Lonely_Cat1 天前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
Elasticsearch1 天前
使用 Elastic Agent Builder 和 Sarvam AI 构建多语言语音 agent
elasticsearch
和你看星星3 天前
Git rerere:让重复冲突只解决一次
git