当本地代码仓库中存在一些大文件时,会出现无法正常 push
到 GitHub
的情况,原因是 GitHub
对单文件大小做了限制,此时可以通过 Git LFS
来解决大文件的问题。
安装
macOS
通过 brew
来安装 git lfs
brew install git-lfs
初始化
执行 git lfs install
命令,结果如下
Updated Git hooks.
Git LFS initialized.
关联
通过 git lfs track <文件名>
命令将文件与 Git LFS 相关联。
- 示例(以
libil2cpp.a
文件为例)
git lfs track libil2cpp.a
- 结果
Tracking "libil2cpp.a"
此时会自动生成 .gitattributes
文件,内容如下:
libil2cpp.a filter=lfs diff=lfs merge=lfs -text
GitHub
官方文档上有提到关于 .gitattributes
的注意事项(传送门):
注意:我们强烈建议您将本地 .gitattributes 文件提交到仓库中。
- 依赖与 Git LFS 关联的全局 .gitattributes 文件,可能会导致在参与其他 Git 项目时发生冲突。
- 在存储库中包含 .gitattributes 文件允许创建复刻或新克隆的人员使用 Git LFS 更轻松地进行协作。
- 在存储库中包含 .gitattributes 文件允许 Git LFS 对象选择性地包含在 ZIP 文件和压缩包存档中。
提交
通过如下命令添加到代码仓库中
git add libil2cpp.a
git commit -m "add large file"
最后就可以 push
到远程仓库了。(注:本示例远程仓库使用的是 GitHub
)
网友评论