Atlassian工程師Szilard Szasz-Toth在一篇文章中寫道,以前是在BitBucket Server上,現(xiàn)在,Atlassian基于云的代碼管理解決方案BitBucket Cloud也提供了Git大文件存儲(chǔ)。
Git LFS背后的基本理念是將大型二進(jìn)制文件存儲(chǔ)在并行存儲(chǔ)中,而Git庫只包含到那些文件的輕量級(jí)引用。這樣,二進(jìn)制文件的修改歷史就可以表示為其實(shí)際版本的引用序列,而不是完全復(fù)制它們。這大大提升了克隆以及獲取新版本庫的速度,因?yàn)橹挥写笪募漠?dāng)前檢出版本會(huì)被下載。
據(jù)Szasz-Toth介紹,Git LFS特別適合于游戲開發(fā)人員、支持更高顯示分辨率的移動(dòng)開發(fā)人員和使用富媒體的Web開發(fā)人員。此外,它還有助于將Git有效地用于非代碼相關(guān)的任務(wù),例如存儲(chǔ)講稿、數(shù)據(jù)集、測(cè)試數(shù)據(jù)庫鏡像,等等。
Git LFS由GitHub創(chuàng)建,并且當(dāng)前由GitHub維護(hù)。這是一個(gè)開源的Git擴(kuò)展,旨在更好地集成大型二進(jìn)制文件,包括音頻、視頻和圖像。
Git LFS通過新增命令lfs擴(kuò)展了Git。該命令支持以下選項(xiàng):
config:顯示Git LFS配置; init:初始化Git LFS; logs:顯示git-lfs的錯(cuò)誤信息; track:將一個(gè)大文件添加到Git庫,允許用戶指定文件擴(kuò)展名; untrack:從Git LFS刪除一個(gè)文件; push:將tracked文件推送到Git LFS端點(diǎn); status:顯示修改過的Git LFS對(duì)象路徑;下面是將一個(gè)大文件添加到現(xiàn)有庫的步驟:
git lfs track "*.pdf"git add file.pdfgit commit -m "Add design file"git push origin master如Szasz-Toth所言,Git LFS支持已經(jīng)包含在Atlassian的圖形Git客戶端SourceTree中。
查看英文原文:BitBucket Cloud Adds Beta Support for Git Large File Storage