这里是Tao的文章集

Git LFS使用--Netlify Large Media

2019-03-04  本文已影响2人  MrTT

前言

Git LFS一直都想尝试,但,GitHub上

image.png

1G的存储,1G的带宽是,这量实在是。。。在2月26日,Netlify宣布了流量限制100G,也宣布新的功能,图像转换功能为流量限制做铺垫,以及这个转换功能所附带的大文件存储。一半伤心一半心动。虽然转换功能也有限制,2500次每月(同一次相同转换会缓存,只消耗1次次数),所以对于大部分中小型网站来说都够用了,当然100G的带宽,也是一样。

作为转换功能基础的文件存储,则没提及,可能无限制吧。所以是时候升级啦。

为什么要使用LFS

原因涉及到Git的底层原理,很多介绍上只说了会使存储库变的很大,所以要用LFS,但事实上二进制文件就是很大的,用了LFS,最后还不是得下一堆二进制文件。根本原因不是这个,而是Git的底层文件系统。Git的所有文件都存放在.git\objects中,而修改是保存一个新的文件,而目录中以hash值引用,旧文件是不会被删除的,删除也是一样。所以整个.git文件夹会变得特别膨大。

Git LFS能将二进制存储在别处,在Git中存储的只是标记文件,占用空间十分小。所以,当文件被删除后,空间占用也就少了,不会想原先那样,只增不减。

如何使用

这里使用Netlify Large Media做存储库。

  1. 安装netlify-cli,以及登录
npm install netlify-cli -g
netlify login
  1. 安装Large Media插件
netlify plugins:install netlify-lm-plugin
netlify lm:install
  1. 关联netlify实例,以及初始化Git LFS配置
netlify link
netlify lm:setup
  1. 添加需要Git LFS管理的文件
git lfs track "source/images/**"
git lfs track "*.jpg"
  1. 想正常一样操作Git即可
git commit -m "track"
git push origin master

注意:在初次安装Large Media插件时,可能需要关掉命令终端,重新启动来加载脚本

图像转换功能

这是另一大激动人心的功能,能帮我们自动转换图片大小。可以省下我们很多事。或者说我们可以不再准备多套分辨率了,想调用api一样获得

不过在hexo中比较难处理。目前我也只能通过过滤器,把<img>中带widthheight转化为netlify的图像转换api,那样就能得到适合大小的图片,加快页面载入

参考

  1. Netlify Large Media Doc

本文作者: Mr.J
本文链接: https://www.dnocm.com/articles/beechnut/netlify-lm/
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

上一篇 下一篇

猜你喜欢

热点阅读