Git不允许提交100M以上的文件(Pods更新SDK的本质其实是从对应的Git仓库中下载文件);Git官方给出的解决办法是安装Git LFS(Large File Storage)服务,并将大的.a文件上传至Git LFS存储。
因此在许多SDK大于100M的时候,用户未安装Git LFS服务,造成普通下载时只下载了100多字节的文件,编译就会出现问题。
Git LFS 是 Github 开发的一个 Git 的扩展,用于实现 Git 对大文件的支持
LFS(Large File Storage) 将你所标记的大文件保存至另外的仓库,而在主仓库仅保留其轻量级指针.
那么在你检出版本时,根据指针的变化情况下更新对应的大文件.而不是在本地保存所有版本的大文件
安装
注意:安装 Git LFS 需要 Git 的版本不低于 1.8.5
安装HomeBrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装HomeBrew
brew install git-lfs
启动Git LFS
git lfs install
安装后重新pod update
若还是不行,需要进行清理 pod cache clean --all
使用
执行 git lfs install
开启lfs功能
使用 git lfs track
命令进行大文件追踪 例如git lfs track "*.png"
追踪所有后缀为png的文件
使用 git lfs track
查看现有的文件追踪模式
提交代码需要将gitattributes
文件提交至仓库. 它保存了文件的追踪记录
提交后运行git lfs ls-files
可以显示当前跟踪的文件列表
将代码 push 到远程仓库后,LFS 跟踪的文件会以『Git LFS』的形式显示
clone 时 使用git clone
或 git lfs clone
均可
网友评论