Atlassian工程师Szilard Szasz-Toth在一篇文章中写道,以前是在BitBucket Server上,现在,Atlassian基于云的代码管理解决方案BitBucket Cloud也提供了Git大文件存储。
Git LFS背后的基本理念是将大型二进制文件存储在并行存储中,而Git库只包含到那些文件的轻量级引用。这样,二进制文件的修改历史就可以表示为其实际版本的引用序列,而不是完全复制它们。这大大提升了克隆以及获取新版本库的速度,因为只有大文件的当前检出版本会被下载。
据Szasz-Toth介绍,Git LFS特别适合于游戏开发人员、支持更高显示分辨率的移动开发人员和使用富媒体的Web开发人员。此外,它还有助于将Git有效地用于非代码相关的任务,例如存储讲稿、数据集、测试数据库镜像,等等。
Git LFS由GitHub创建,并且当前由GitHub维护。这是一个开源的Git扩展,旨在更好地集成大型二进制文件,包括音频、视频和图像。
Git LFS通过新增命令lfs扩展了Git。该命令支持以下选项:
config:显示Git LFS配置; init:初始化Git LFS; logs:显示git-lfs的错误信息; track:将一个大文件添加到Git库,允许用户指定文件扩展名; untrack:从Git LFS删除一个文件; push:将tracked文件推送到Git LFS端点; status:显示修改过的Git LFS对象路径;
下面是将一个大文件添加到现有库的步骤:
git lfs track "*.pdf"git add file.pdfgit commit -m "Add design file"git push origin master
如Szasz-Toth所言,Git LFS支持已经包含在Atlassian的图形Git客户端SourceTree中。
====================================分割线================================
本文转自d1net(转载)