eclipse查看git地址_Git大文件管理:函数计算和OSS支持的Git LFS服务器
此服务器支持Batch API和File Locking API。项目地址与文档:
https://github.com/zhxxch/git-lfs-one/github.comLFS 是个好东西但 GitHub 给的容量有点少,套餐也不大合适,如果把文件放到对象存储上,速度就快多了……
Git LFS Serverless & Git LFS One
完全弹性伸缩的Git LFS服务器。
由阿里云对象存储(OSS)、函数计算(FC)、表格存储(OTS)支持。
以极低成本自由搭建仓库数目不限、容量不限的LFS服务。
∘ 安装 ∘ 客户端设置 ∘ 卸载 ∘ 注意事项 ∘
∘ 使用OneDrive托管并发布公共LFS仓库(Git LFS One)
资源栈模板安装
确保阿里云账户开通了对象存储、函数计算、表格存储、访问控制和资源编排服务。
获取JSON内容后点击下一步;
客户端设置
(Git LFS的使用可以参考Git LFS 操作指南(Gitee)、git-lfs/git-lfs/wiki/Tutorial)
建立仓库;开启LFS:
git init git lfs install设置LFS远程地址:
git config --local lfs.url <Endpoint URL>也可以.lfsconfig文件中设置远程地址:
git config --file=.lfsconfig lfs.url <Endpoint URL> git add .lfsconfig.lfsconfig文件提交到仓库中则克隆仓库时LFS自动读取.lfsconfig并下载文件。
远程地址的格式
<Endpoint URL>实际地址可以在资源栈“输出”选项卡中查看,例如:
https://######.fc.aliyuncs.com/2016-08-15/proxy/service/function/{******}.git/info/lfs其中{******}部分可以任意填写作为仓库名。如果设置远程地址为https://....../Repo.git/info/lfs,上传的文件将位于OSS存储桶的/Repo.git/lfs.objects/文件夹中。
通过为不同仓库的客户端设置不同的远程地址,各仓库LFS管理的文件可以存储在不同目录中,无需服务器端为此个别配置。
其他服务器设置
客户端认证
地址中username:password是HTTP认证部分的“用户名:密码”。为服务器端仓库添加用户或更改用户名与密码的方式是:编辑OSS存储桶中仓库目录下的lfs.htpasswd.json文件。示例:
["user001:{SHA}DMfOUZZzqxOm6a0yb0+6RDorH/4=","contrib:{SHA}Ki8e1bdA8S2EvNh24SP7+7gjKRc=" ]仅支持SHA-1。此文件中默认保存了创建资源栈时设置的用户名和密码。
可以使用这个工具在线生成htpasswd。
未认证的用户仍可以下载文件(前提是拥有对应的Git仓库),上传和使用文件锁功能必须提供正确的用户名和密码。
如果希望架设一个仅供克隆和拉取且可公开访问的LFS仓库,推荐使用Git LFS One将LFS文件托管在OneDrive中,并获得一个用于LFS拉取(pull)的URL。
绑定自定义域名
如果将自定义域名my-domain.net与路径/xxx/xxxx/*绑定至函数,则对应MyRepository仓库的LFS远程地址是:
https://username:password@my-domain.net/xxx/xxxx/MyRepository.git/info/lfs管理远程文件
Git LFS协议仅能够上传、下载,没有提供删除服务器端文件的手段,如果希望本地LFS管理的内容与服务器端存储的内容完全一致,最简单的方法是使用git lfs fetch --all将文件全部下载到本地,然后清空服务器中当前仓库的所有文件(即删除存储桶中的对应目录,本软件没有提供这项功能,需要通过控制台或API操作),再通过git lfs push --all重新上传。
卸载
卸载本地仓库的LFS请参考git-lfs/git-lfs#3026。
合并代码与资源栈模板
脚本Build-Template.ps1将函数的代码打包为zip,以base64编码写入资源栈模板中。此脚本可能需要在Windows系统中运行。
./Build-Template.ps1 ./lfs-oss.js ./template-code-incomplete.json ./lfs-oss-template.json【其他注意事项】
本地的Git LFS客户端直接向OSS发送PUT请求上传文件,OSS API有5GB的限制。改进这一限制必须分片上传,Git LFS客户端自身无法做到这一点。(此外Git for Windows无法处理大于4GB的文件:git-for-windows/git#1063)
Git LFS协议的特性造成请求数、函数计算的流量和执行时间费用可忽略不计;考虑到OSS上传流量不计费,总成本主要由OSS存储以及OSS或CDN下行流量费用构成,几乎所有情况下都低于单纯由云服务器支持的Git LFS服务。
如果不希望此服务器造成过大的LFS下行流量,可以使用Git LFS One将仓库托管在OneDrive上。
反馈
故障报告、建议请通过Issues提出,其他事项请联系zhxxch at outlook dot com。
使用许可
GPL-3.0
Git LFS One
开始使用Git LFS One:https://lfs-one.inv.ariant.cn
∘ 使用条款 ∘ 隐私声明 ∘
OneDrive与Git LFS One的连接
Git LFS One能够将OneDrive中的特定文件夹转换成公开的Git LFS仓库。普通的Git LFS客户端均可以通过http://lfs.v.ariant.cn提供的地址拉取OneDrive中的LFS文件。
cd Git-LFS-One mkdir <repository-name> cd <repository-name> git init --bare
git remote add onedrive C:/.../.../Git-LFS-One/<repository-name>/
git remote add onelfs https://lfs.v.ariant.cn/######/<repository-name>.git git lfs fetch onelfs
例如
https://lfs.v.ariant.cn/######/repository-folder.git对应OneDrive中
~/OneDrive/Apps/Git-LFS-One/repository-folder/或
~/OneDrive/应用/Git-LFS-One/repository-folder/请在repository-folder目录下执行git init --bare并将LFS文件推送至此仓库中;或直接复制本地仓库的.git/lfs目录到repository-folder文件夹中。
OneDrive中应该具有如下目录结构:
OneDrive +---应用(或“Apps”)---Git-LFS-One---<repository-folder>+---hooks+---info+---lfs| ---objects| +---HH| | ---HH+---objects| +---info| ---pack---refs+---heads---tags本软件得到了“Git推广普及计划”“Git LFS惠民工程”“云计算进乡村促发展”(这些都不存在的)项目的资助。GitHub ∘ Gitee
总结
以上是生活随笔为你收集整理的eclipse查看git地址_Git大文件管理:函数计算和OSS支持的Git LFS服务器的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: java oss 批量传输_初步使用阿里
- 下一篇: PPT怎么在剪映_剪映怎么剪辑音乐?添加