GitLab 宣布支持 Git 大文件存储 (Git LFS) - 开源中国社区
GitLab 宣布支持 Git 大文件存储 (Git LFS)
oschina 2015年11月25日

GitLab 宣布支持 Git 大文件存储 (Git LFS)

oschina oschina 发布于2015年11月25日 收藏 16 评论 25

【腾讯云】如何快速搭建微信小程序?>>>  

GitLab 宣布支持 Git LFS,Git 大型文件存储。随着越来越多的开发者使用 Git 和 GitLab,其他的一些工业也开始使用 GitLab,比如版本化视频文件,图像,甚至是微芯片设计,团队需要一个平台来进行高效可靠的大型文件版本协作。

为了更好的服务社区,满足版本大型文件的需求,GitLab 宣布支持 Git LFS,现在已经包括在 GitLab.com,GitLab 社区版本和 GitLab 企业版本。现在游戏开发者,图像设计师,移动应用开发者和任意需要大型文件的软件开发者都可以在 GitLab 中版本化他们的应用资产。

使用 GitLab EE 的公司还可以选择使用 git-annex,来版本化大型文件或者切换到 Git LFS。

什么是 Git LFS?

Git LFS 使用引用小文本文件指针指向存储在 GitLab 服务器的大型文件。大型文件主要是高分辨率的图像和视频文件。

Git LFS 允许 Git 用户突破之前仓库给予的大小限制,但建议不要超过 1GB,这样可以保证性能,减少性能问题。

via gitlab.com

开源中国代码托管平台 git.oschina.net 就是基于 GitLab 项目搭建。

GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

GitLab 5.0以前版本要求服务器端采用 Gitolite 搭建,5.0版本以后不再使用 Gitolite ,采用自己开发的 gitlab-shell 来实现。如果你觉得安装麻烦可以使用 GitLab Installers 一键安装程序。

系统要求:

  • Ubuntu/Debian

  • ruby 1.9.3+

  • mysql or postgresql

  • git

  • gitlab-shell

  • redis

  • Sidekiq

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:GitLab 宣布支持 Git 大文件存储 (Git LFS)
分享
评论(25)
最新评论
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?

引用来自“无闻”的评论

我感觉LFS根本就不给大文件做分段,是根本每个版本存一份。。

引用来自“独孤青冥”的评论

不会吧。。。。这样就有点坑了。。。再大的硬盘也禁不起这么个存法啊
Git LFS处理大型二进制文件的方式是用“文本指针”替换它们。这些文本指针实际上是包含二进制文件信息的文本文件。文本指针存储在Git中,而大文件本身通过HTTPS托管在Git LFS服务器上。
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?

引用来自“无闻”的评论

我感觉LFS根本就不给大文件做分段,是根本每个版本存一份。。

引用来自“独孤青冥”的评论

不会吧。。。。这样就有点坑了。。。再大的硬盘也禁不起这么个存法啊
LFS 的定义就是 large file,文件不大还叫 large file 吗?。。根据 GitHub 的服务器定义,LFS 服务端只有上传下载功能。
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?

引用来自“无闻”的评论

我感觉LFS根本就不给大文件做分段,是根本每个版本存一份。。

引用来自“悠久之风”的评论

我觉得分段就不可行
不一定,分段不可行,但分块一定可行。。
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?

引用来自“独孤青冥”的评论

我为啥要区分?我只是当做文本文件来处理,并不是说一定要搞成文本文件,搞成别的也行啊,或者说别的文件类型也行啊

引用来自“悠久之风”的评论

因为你要支持revert、diff、merge和pull等功能啊,你不区分的话,怎么知道改了哪里?不知道变更的地方还怎么进行管理?
这样吧,我将所有的文件划分成大小相等的块,然后标记哪些块被改动,然后保存改动后的样子,然后。。似乎解决了你的问题?
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?

引用来自“无闻”的评论

我感觉LFS根本就不给大文件做分段,是根本每个版本存一份。。
我觉得分段就不可行
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?

引用来自“独孤青冥”的评论

我为啥要区分?我只是当做文本文件来处理,并不是说一定要搞成文本文件,搞成别的也行啊,或者说别的文件类型也行啊
因为你要支持revert、diff、merge和pull等功能啊,你不区分的话,怎么知道改了哪里?不知道变更的地方还怎么进行管理?
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?
我为啥要区分?我只是当做文本文件来处理,并不是说一定要搞成文本文件,搞成别的也行啊,或者说别的文件类型也行啊
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?

引用来自“无闻”的评论

我感觉LFS根本就不给大文件做分段,是根本每个版本存一份。。
不会吧。。。。这样就有点坑了。。。再大的硬盘也禁不起这么个存法啊
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?

引用来自“悠久之风”的评论

你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?
我感觉LFS根本就不给大文件做分段,是根本每个版本存一份。。
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?

引用来自“独孤青冥”的评论

我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?
你用note pad打开一个二进制文件看看能处理不?文本文件可以通过“\r\n"或者"\n"或者"\r"来区分行,二进制用什么来分段呢?
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......

引用来自“悠久之风”的评论

二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?
我不认为分段会是个问题,跟踪是时候不需要管什么格式的文件,统一当做文本文件处理就行了,只要能还原过来,反正不管什么类型的文件,归根到底都是二进制串而已,为什么不可以忽略文件类型直接处理?
0

引用来自“独孤青冥”的评论

文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......
二进制文件有很多种,Windows有pe,Linux有elf,格式这么而且不同Linux发行版的二进制文件也有差别,怎么分段?
0

引用来自“笨蛋0007”的评论

@红薯 开源中国支持large file吗

引用来自“红薯”的评论

我们没有限制,但是不允许托管非代码项目

引用来自“笨蛋0007”的评论

项目原型,需求文档。保真图。5能支持吗
这种ok啊
0

引用来自“笨蛋0007”的评论

@红薯 开源中国支持large file吗

引用来自“红薯”的评论

我们没有限制,但是不允许托管非代码项目
项目原型,需求文档。保真图。5能支持吗
0

引用来自“笨蛋0007”的评论

@红薯 开源中国支持large file吗
我们没有限制,但是不允许托管非代码项目
0
@红薯 开源中国支持large file吗
0
赞。。。
0
文件映射吧...只跟踪二进制文件被修改的段,然后创建一个指向, 提取时就提取原始文件,然后一个一个的替换内容段,这样就实现了git管理二进制文件.......
0
git vip,git黄钻 同步上线
0

引用来自“snowdream”的评论

osc会不会跟进?哈哈
会关注,但短期内不会跟进。
顶部