大文件传输到github的处理

今天创建了一个文件夹,将平时本地和云服务器中一些中间件进行汇总,并上传到github上,但是最后push的时候发现失败了

 根据错误信息很容易定位到问题是github限制了最大单个文件上传大小是100M,我们的3个jar包都大于100M导致上传失败,对于这个问题,错误提示中给出了解决方法,让我们去https://git-lfs.github.com 寻找解决方式。

根据提示我们打开这个网站发现这是一个开源的针对git的大文件传输的拓展

我们的mac系统可以使用brewhome进行安装

在我们控制台中直接执行命令

brew update
brew install install git-lfs

下载安装成功后按照网站的教程执行git指令

git lfs install

注意下这个指令只需要我们执行一次就行了

下面我们进到我们仓库目录中追踪我们的文件的拓展文件名

git lfs track "*.jar"
git add .gitattributes

执行上面的命令之后我们按照常规操作将文件上传到github上。

但是事情并没有想象中的那么顺利,当最后push发现这3个文件仍然因为超过100M而上传失败

为了解决这个问题我们再次查看https://git-lfs.github.com 发现这段内容

 从上面内容不难理解git llfs不会追踪预先存在的文件,例如其他分支上的文件或者历史已经提交的文件,因为之前我们所有文件已经commit,所以猜想可能是因为这个导致的,对于这个命令我不是很熟悉,所以采用了最笨的方法直接git reset取消了之前的提交,重新执行了上面的git 和git lfs命令终于提交成功了

最后查询了一下git-lfs的原理发现:是将大文件存储到Git LFS服务器上,而不是存储在Git仓库中。当Git LFS文件被提交时,Git LFS会将相应的指针(pointer)存储在Git仓库中,这个指针指向实际的文件存储位置。当需要访问该文件时,Git LFS会从Git LFS服务器上下载相应的文件

 

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值