Git LFS 简介
CODE CHINA 已支持 Git LFS 功能,该功能免费开放。
Git LFS(Large File Storage,大文件存储)是 Github 开发的一个Git 的扩展,用于实现 Git 对大文件的支持。
使用目的
不同于git每次保存diff,对于git来说,如果是模型或者一些设计大文件,改变一点,对于仓库来说会增加很大的体积,不一会就能几个G。 Git LFS 可以把音乐、图片、视频等指定的任意大文件资源存储在Git仓库之外,减小Git仓库本身的体积,使克隆Git仓库的速度加快,也使得Git不会因为仓库中充满大文件而损失性能。
Git LFS 下载和安装
注意:安装 Git LFS 需要 Git 的版本不低于 1.8.5 Git LFS 官网: https://git-lfs.github.com/ CODECHINA mirror 过来Git LFS的地址:https://codechina.csdn.net/mirrors/git-lfs/git-lfs
Linux 系统
$ curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
$ sudo apt-get install git-lfs
$ git lfs install
运行
git lfs install
,如果显示Git LFS initialized说明安装成功
MacOS 系统
1.安装HomeBrew
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2.安装 Git LFS
$ brew install git-lfs
$ git lfs install
Windows 系统
1.下载安装程序 windows installer
2. 运行 windows installer
3. 在命令行执行 git lfs install
配置
配置我们要与Git LFS关联的文件类型,此信息将添加到.gitattributes 存储库中的 文件中。
将文件类型与Git LFS关联的最简单方法是通过 git lfs track
命令。
如将所有 jpg 文件管理到Git LFS:
$ git lfs track "*.png"
该 .gitattributes
文件已创建,并包含以下信息:
*.jpg filter=lfs diff=lfs merge=lfs -text
完美的!从现在开始,LFS将处理此文件。现在,我们可以按照以前的方式将其添加到存储库中。注意,对其他任何更改.gitattributes也必须提交到存储库,就像其他修改一样:
$ git add .gitattributes
$ git add design-resources/design.psd
$ git commit -m "Add design file"
常用 Git LFS 命令
查看 git lfs 当前正在跟踪的所有模式的列表
$ git lfs track
查看 git lfs 当前跟踪的文件列表
$ git lfs ls-files
取消跟踪并从LFS 删除文件
从lfs取消跟踪特定类型的所有文件,并将其从缓存中删除:
$ git lfs untrack "*file-type"
$ git rm --cached "*file-type"
如果要将这些文件重新添加到常规git跟踪中并提交,可以执行以下操作:
$ git add "*file-type"
$ git commit -m "restore "*file-type" to git from lfs"
感谢 @BaiXuePrincess 贡献的关于 Git-LFS 的帮助文档