当前位置: 首页 > news >正文

gitlab解决传过大文件后删除导致pack过大问题

有时候git项目源文件明明不大,可能就1M左右,然而拉取却很慢,整体占用空间达到几十上百M,查看提交记录,发现是有人误提交了编译后的target包中的jar包,后来发现误传又删除了。

在 GitLab 中,即使删除了大文件,它们的历史记录仍会保留在仓库中,导致 .pack 文件过大,影响拉取代码的速度。要彻底删除这些大文件的历史记录,可以使用 git filter-repo 工具。以下是具体步骤:

1. 安装 git filter-repo

确保已安装 git filter-repo,若未安装,可通过以下命令安装:

pip install git-filter-repo

2. 克隆仓库

克隆需要清理的仓库:

git clone --mirror https://gitlab.com/your-username/your-repo.git

cd your-repo.git

3. 使用 git filter-repo 删除大文件

使用 git filter-repo 删除大文件的历史记录。例如,删除 large-file.zip:

git filter-repo --path large-file.zip --invert-paths

若要删除多个文件,可以多次使用 --path 参数:

git filter-repo --path large-file1.zip --path large-file2.zip --invert-paths

4. 推送更改

清理完成后,强制推送到远程仓库:

git push origin --force --all

git push origin --force --tags

5. 重新克隆仓库

清理后,重新克隆仓库以确保所有历史记录已更新:

cd ..

rm -rf your-repo.git

git clone https://gitlab.com/your-username/your-repo.git

6. 清理本地仓库

如果本地仓库也需要清理,可以删除并重新克隆:

rm -rf your-repo

git clone https://gitlab.com/your-username/your-repo.git

注意事项

备份:操作前务必备份仓库,以防数据丢失。

影响:这会重写提交历史,所有开发者需重新克隆仓库。

权限:确保有权限强制推送。

通过这些步骤,你可以有效清理仓库中的大文件记录,减小 .pack 文件大小,提升拉取代码的速度。

需要加个remote,

URL:https://xxx.com/xta/xt-open-admin  (你的git地址)

如果不能force push 则可临时打开配置:

http://www.dtcms.com/a/553108.html

相关文章:

  • sourcefare零基础学习,创建第一个扫描项目(服务端Git方式)
  • SAP使用abapGit在云环境中迁移开发包
  • DGX Spark 实战解析:模型选择与效率优化全指南
  • 宁德蕉城城乡建设网站广州建站业务公司
  • 长乐福州网站建设交换神器
  • Unity之OpenXR+XR Interaction Toolkit交互过滤器Filtering
  • MATLAB 模拟台风路径和强度变化
  • 第3讲:创建并运行你的第一个Flutter应用
  • 使用LangChain+LangGraph自定义AI工作流,实现音视频字幕生成工具
  • 【Matlab】基于模型预测控制(MPC)与滚动时域估计(MHE)集成的目标点镇定研究
  • 基于MATLAB的粒子群算法(PSO)优化libsvm参数完整实现
  • PostgreSQL 的表继承与分区
  • 神经网络之矩阵可逆
  • 笔记:现代操作系统:原理与实现(7)
  • Java-164 MongoDB 认证与权限实战:单实例与分片集群 整体认证配置实战 最小化授权/错误速查/回滚剧本
  • 北京公司的网站建设きょこんきょうしゃ在线
  • 第4讲:理解Flutter的灵魂 - “Everything is a Widget”
  • 驱动精灵、驱动人生、NVIDIA专业显卡驱动、360驱动大师、联想乐驱动,电脑驱动修复工具大全
  • Spring Boot 4与Spring Framework 7:云原生Java的全新革命与企业级实战
  • 虚拟机在云原生与智能时代的未来应用场景探析
  • 电脑如何设置wifi密码,详细步骤教程指南
  • C#面试题及详细答案120道(51-60)-- LINQ与Lambda
  • 北京网站备案的地址ps怎么做网站分隔线
  • DLSS是什么
  • web网页开发,旧版在线%考试,判题%系统demo,基于python+flask+随机分配考试题目,基于开发语言python,数据库mysql
  • 【C++】哈希表封装实现 unordered_map 和 unordered_set
  • 353-Spring AI Alibaba ARK 多模型示例
  • 安徽海绵城市建设协会网站ip查询网站备案查询系统
  • MVVM架构与ICommand核心笔记
  • Web后端开发学习总结