使用Git LFS上传Unity大型资源文件

注意,本文仅供参考,不同情况下解决方案可能不同        

        在使用Unity制作结课作业时,使用到git工具进行版本控制与多人协作。在提交项目至远程仓库的过程中,git bash提示了以下报错:

remote: warning: File Assets/Models/Z_India_5.29.fbx is 57.31 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB
remote: error: Trace: fa4a9cc49cc337ec9fefcdfdbad0260395e4f601a7595b9ead64e68c51a65626
remote: error: See Managing large files - GitHub Docs for more information.
remote: error: File Assets/Models/zhongguoguan.fbx is 119.03 MB; this exceeds GitHub's file size limit of 100.00 MB
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.
To github.com:Curzsu/Museum-Escape.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'github.com:Curzsu/Museum-Escape.git'

查阅了相关资料,得出以下结论:

        这个错误信息显示Git 仓库中有两个文件大小超过了 GitHub 的限制,分别是 "Assets/Models/Z_India_5.29.fbx" 和 "Assets/Models/zhongguoguan.fbx"。GitHub建议单个文件大小不超过50MB,而这两个文件分别为 57.31MB 和 119.03MB。

        简言之,就是在单次提交中,不能直接提交一个大小过大的文件。

        幸运的是,可以通过使用Git Lfs来解决这种问题。Git LFS(Large File Storage)是一个 Git 扩展,可以帮助我们管理和提交大文件。

假设你已经由于上传过大文件而报错了,请先撤销commit至文件还未提交时的初始状态,可用如下命令进行撤销commit操作(每执行一次,就撤销一次提交):

git reset --soft HEAD^

接下来就是git lfs的具体使用流程,最好按顺序执行:

1、首先在github对将要上传到的目标仓库进行设置。使用Git LFS上传Unity大型资源文件_第1张图片

 勾选红框处:使用Git LFS上传Unity大型资源文件_第2张图片

2、打开bash,初始化安装lfs

git lfs install

3、添加.gitattributes这个文件,这样才能成功执行后面一系列操作

git add .gitattributes

4、使用lfs追踪将要上传的大文件(这里我直接把刚刚报错的模型文件进行追踪)

git lfs track "Assets/Models/*.fbx"

5、使用如下命令,查看当前已追踪的文件,确认一下

git lfs track

6、接下来就是正常操作

git add .
git commit -m "LFS models"
git push origin master

完毕

你可能感兴趣的:(其它,Unity,git,unity,游戏引擎)