使用gitlfs存储大文件

我们知道git是为了管理代码而开发出来的,擅长的也是文本文件,但是我们项目中很难保证没有一些二进制文件甚至一些很大的二进制文件,而这些文件就有可能很大。如果需要将大文件传输到GitHub中,那么100M的限制,就需要想其他办法了,好在GitHub现在提供了git lfs服务。
PS:尽管有git lfs,但是严重不鼓励使用git来存储二进制文件,不鼓励用git存储大文件

不用git lfs状况

下面这张图就是作者想将项目提交到GitHub上时遇到的错误large file detected:
large_file_detected

这个时候我们一般处理方法都是把大文件找出来,放在其他地方,git中只存放代码,但这样作很麻烦,项目clone下来后,还要再根据文档,再去找以来的二进制文件;现在又另一种方案就是使用git lfs

安装使用

安装直接去官方下载页下载相对应的安装包即可,挥着如下:

1
2
3
4
# only for cent os7
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.rpm.sh | sudo bash
sudo yum install git-lfs
git lfs install

安装完成以后,使用命令 git lfs track "*.model" 来跟踪所有”.model”文件(这里是笔者项目中大文件),会生成一个”.gitattributes”的新文件,将这个文件加入项目中,再次commit以及push就可以了