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

Git 存储大文件

Git 存储大文件处理方法

  • 寻找大文件的后缀
  • LFS的安装
  • 让仓库支持LFS
  • 添加到LFS
  • 提交

寻找大文件的后缀

 find . -type f -size +10M | grep -v ".git"  | rev | cut -d. -f1 | rev | sort | uniq

这个命令的工作原理如下:

find .-type f -size +10M:查找大于10M的文件。
grep -v “.git”: 不处理.git 目录下的文件
rev:反转每一行,这样文件的扩展名就在行的开始位置。
cut -d. -f1:使用.作为分隔符,取出每一行的第一部分,也就是文件的扩展名。
rev:再次反转每一行,将扩展名恢复到原来的位置。
sort:对结果进行排序,这是uniq命令去重的前提。
uniq:去除重复的行,也就是重复的扩展名。

LFS的安装

  • 下载:

Linux Debian 和 RPM packages:https://packagecloud.io/github/git-lfs/install

Mac: brew install git-lfs

Windows:目前lfs已经集成在了Git for Windows 中,直接下载和使用最新版本的Windows Git即可。

直接下载二进制包:https://github.com/git-lfs/git-lfs/releases

依据源码构建:https://github.com/git-lfs/git-lfs

  • 安装:

如果你选择使用二进制包下载后安装,直接执行解压后的./install.sh脚本即可,这个脚本会做两个事情:

在$PATH中安装Git LFS的二进制可执行文件

执行git lfs install命令,让当前环境支持全局的LFS配置

让仓库支持LFS

git lfs install

Updated pre-push hook.
Git LFS initialized.

添加到LFS

把筛选出来的后缀添加到lfs的跟踪后缀忠

git lfs track *.so

.gitattributes 文件会自动添加如下行

*.so filter=lfs diff=lfs merge=lfs -text

提交

Github和常规提交一致

git commit

推送

git push

如果是其他仓库,可能需要按照官方说明进行额外处理。
例如阿里云仓库则需要参照链接

http://www.lryc.cn/news/300739.html

相关文章:

  • 使用 Mermaid 创建流程图,序列图,甘特图
  • 政安晨:在Jupyter中【示例演绎】Matplotlib的官方指南(二){Image tutorial}·{Python语言}
  • gem5学习(20):替换策略——Replacement Policies
  • 嵌入式Qt Qt中的字符串类
  • 函数高级(C++)
  • jmeter-10调试取样器
  • C#,二进制数的按位旋转(Bits Rotate)算法与源代码
  • 解决ubuntu登录密码问题
  • Ubuntu忘记登录密码重置步骤
  • MySQL数据库基础(五):SQL语言讲解
  • python-使用ffmpeg批量修改文件的后缀名
  • 关于jupyter的一些小笔记
  • macOS 安装 conda
  • C++并发编程 -3.同步并发操作
  • 【打工日常】使用docker部署可视化工具docker-ui
  • LGAMEFI基于BPL公链开发的第一生态:开启RWA游戏娱乐与DeFi融合的新纪元
  • AI专题:5G-A扬帆风正劲,踏AI增长新浪潮
  • C++Linux网络编程:poll模型和简单使用
  • Excel模板2:进度条甘特图
  • 数据结构:4_二叉树
  • 设计模式之:状态模式(State Pattern)
  • 【微服安全】API密钥和令牌与微服务安全的关系
  • Mock.js
  • 【c++】list详细讲解
  • C#面:在.NET中 类 System.Web.UI.Page 可以被继承吗?
  • AI:128-基于机器学习的建筑物能源消耗预测
  • php基础学习之可变函数(web渗透测试关键字绕过rce和回调函数)
  • MongoDB聚合操作符:$acos
  • 开源PDF工具 Apache PDFBox 认识及使用(知识点+案例)
  • 微软.NET6开发的C#特性——委托和事件