Git - push超大文件到远程仓库

前言

项目中有视频文件,因为超过了50M,结果git提交,收到了警告提交失败

20211215-181718(WeLinkPC).png

简单的说,github 会在你上传文件大于50M的时候,给予警告 ; 大于100M的时候给出 server reject(拒绝上传)

这还了得,必须解决他!!!

接着查资料,然后一顿操作,问题KO。

步骤

安装(在MAC上使用Homebrew安装)

git lfs install

选择您希望Git LFS管理的文件类型(或直接编辑.gitattributes)。您可以随时配置其他文件扩展名。这一步成功后会生成一个gitattributes文件

git lfs track "*.mp4" # 这里的 “ *.mp4"就是你要上传的大文件的路径

添加并commit .gitattributes文件

git add .gitattributes

也可以手动添加如下:

Introduce.mp4 filter=lfs diff=lfs merge=lfs -text
explore.mp4 filter=lfs diff=lfs merge=lfs -text

然后再次提交

git commit .gitattributes
git push origin master

OK, KO,一分钟解决!!!

如果还没解决,遇到了报错信息是:

Remote “origin” does not support the LFS locking API.
Consider disabling it with :
$git config lfs.https://XXXRemoteGitURLXXX.git/info/lfs.locksverify false
Git LFS (0 of 1 files) 0B/3.22MB
batch response: Post https://XXXRemoteGitURLXXX.git/info/lfs/objects/batch:x509: certificate signed by unknown authority

二进制文件较大,需要使用git lfs 提交,我本地已经安装了git lfs 。首先按照提示,执行:

git config lfs. https://XXXRemoteGitURLXXX.git/info/lfs.locksverify false

取消远程仓库对LFS锁定的不支持。接下来解决认证失败的报错。x509很熟悉,是SSL传输的证书标准,应该是ssl认证失败,执行如下命令禁用SSL认证:

git config http. sslVerify false

报错原因具体可以看这个官方issue:https://github.com/git-lfs/git-lfs/issues/2533

再尝试push到远程仓库:git push origin master

OK!问题解决。

点赞加关注,永远不迷路

参考git官方文档:
Git Large File Storage | Git Large File Storage (LFS) replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remote server like GitHub.com or GitHub Enterprise.

你可能感兴趣的:(Git - push超大文件到远程仓库)