gerrit使用插件Git LFS上传大文件

发布时间 2023-03-23 17:14:12作者: 一只小麻瓜

什么是Git LFS

Git本地会保存文件所有版本,对于大文件很容易导致仓库体积迅速膨胀,Git LFS(Large File Storage) 是一个 Git 的扩展,用于实现 Git 对大文件的支持。

简单的说,就是如果你想传超过100M的二进制文件到GitHub,你就要用Git LFS

 

Gerrit LFS 配置方案

1) Install Plugin

2) Configure GERRIT-SITE/etc/lfs.config

[storage] backend = fs directory = xxxxx <= Default: $GERRIT_SITE/data/lfs  

3) Configure GERRIT-SITE/etc/gerrit.config

[lfs] 
plugin = lfs

 

4) Configure all-projects

git clone https://USER@GERRIT-SERVER/a/All-Projects 
git fetch origin refs/meta/config 
git checkout FETCH_HEAD 

vi lfs.config 
[lfs "^.*"] 
  enabled = true 
  maxObjectSize = 50m

git commit
-a git push origin HEAD:refs/meta/config

5) 重启gerrit 服务

6) 查看gerrit ->Plugins->installed  是否显示lfs,不显示说明安装失败

7) 验证是否可以上传下载大文件

dnf install git-lfs
git clone xxxx #克隆项目
git lfs install #git lfs initialized
git lfs track #在当前文件夹下面会生成 .gitattributes 文件

 追踪单个文件:git lfs track "file1"

 追踪指定类型的文件:git lfs track "*.dmg"

 不再使用 Git LFS 管理指定的文件:git lfs untrack "*.dmg"

 追踪指定目录下的文件:git lfs track "FrameworkFold/*"

 枚举目前所有被 Git LFS 管理的具体文件:git lfs ls-files

  git add .gitattributes

 git add file1

 git commit -m "xxxx"

 git push orignal HEAD.....