git lfs的使用

[亡魂溺海] 提交于 2020-02-02 05:56:32

1.什么是git lfs

Git LFS(Large File Storage, 大文件存储)是可以把音乐、图片、视频等指定的任意文件存在 Git 仓库之外,而在 Git 仓库中用一个占用空间 1KB 不到的文本指针来代替的小工具。通过把大文件存储在 Git 仓库之外,可以减小 Git 仓库本身的体积,使克隆 Git 仓库的速度加快,也使得 Git 不会因为仓库中充满大文件而损失性能。

2.优点是什么

git每次保存diff,一些大文件发生变化时,整个仓库就会增加很大的体积,导致clone和pull的数据量大增。对于git lfs来说,在使用git lfs track命令后,git push的时候,git lfs会截取要管理的大文件,并将其传至git lfs的服务器中,从而减小仓库的体积

3.怎么安装

注意:git lfs 要求 git >= 1.8.2

Linux

  1. curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash

  2. sudo apt-get install git-lfs

  3. git lfs install

Mac

  1. 安装HomeBrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  2. brew install git-lfs

  3. git lfs install

4.怎么使用

1. 查看现有的文件追踪模式:git lfs track

2.添加要管理的大文件的文件类型,比如gz文件

    运行命令:git lfs track *.gz

    添加类型后,查看管理文件.gitattributes,可以发现.gitattributes中新增加一行:*.gz filter=lfs diff=lfs merge=lfs -text

3.将管理文件.gitattributes提交至仓库. 它保存了文件的追踪记录

4.获取git lfs管理的所有文件列表:git lfs ls-files 

5.添加大文件到git仓库,和其它添加方式一样
    git add my.gz
    git commit -m "add gz file"
    git push

5.将代码 push 到远程仓库后,LFS 跟踪的文件会以『Git LFS』的形式显示:

6.clone 时 使用'git clone' 或 git lfs clone均可

7.查看Git LFS 的帮助:git lfs help

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!