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

相关推荐
和你看星星41 分钟前
Git rerere:让重复冲突只解决一次
git
大大大大晴天19 小时前
Hudi Metadata Table 与 Hive Sync (HMS)怎么选?
大数据
手可摘星辰7771 天前
一次线上FlinkCDC异常排查复盘
大数据·flink
大大大大晴天1 天前
Hudi技术内幕:Metadata Table原理与实践
大数据
武子康2 天前
调查研究-197 FAISS vs Elasticsearch 全面对比:从向量检索、全文搜索到 RAG 选型指南
人工智能·elasticsearch·agent
大大大大晴天2 天前
Hudi技术内幕:深入解析Index索引机制
大数据
阿里云大数据AI技术2 天前
Flink Forward Asia 2026 深圳启幕:Agentic Streaming for AI,开启实时智能新范式
大数据·flink
SelectDB3 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
Elasticsearch3 天前
Elasticsearch ES|QL:现已支持视图、子查询和读取时模式定义
elasticsearch
嘻嘻仙人4 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github