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怎么在剪映_剪映怎么剪辑音乐?添加