git lfs(git large file storage)使用

由于git是一個分布式設(shè)計,因此本地的版本庫是一個全量的庫。git主要用來托管文本類的文件,但工程中難免會有依賴庫、資源文件等二進(jìn)制文件。git對于二進(jìn)制文件差分是束手無策的,只能全量存儲。如果二進(jìn)制文件比較多或者版本更新頻繁,勢必會導(dǎo)致我們的倉庫達(dá)到不可維護(hù)的狀態(tài)。想象在國內(nèi)“惡劣”的網(wǎng)絡(luò)環(huán)境下,clone一個幾百M甚至到幾G的工程是多么恐怖的事情。因此,一般來說,不建議這類二進(jìn)制進(jìn)入git版本控制中。
很多工程實踐中,會將這類文件存儲在ftp服務(wù)器中,git庫中保存對應(yīng)的地址索引。但是,或許git lfs是一個更好的選擇,其原理和上述實踐原理類似,目前github已經(jīng)完美支持,真是太好了。

  • git lfs 的安裝

    • mac下請使用homebrew安裝:
      brew install git-lfs
  • lfs的使用

    1. 首先需要在git版本庫所在目錄下對lfs進(jìn)行初始化。 執(zhí)行后,在根目錄下會生成“.gitattributes”文件。
      git lfs install
    2. 添加track規(guī)則,下面以后綴為".dat"的二進(jìn)制文件為例。
      git lfs track "*.dat"
      執(zhí)行后,會發(fā)現(xiàn).gitattributes文件多出一行
      *.dat filter=lfs diff=lfs merge=lfs -text
      說明已經(jīng)生效。
  1. 將.gitattributes加入到版本控制中。
    git add .gitattributes
    git commit -m "add .gitattributes"
  2. 至此,lfs已經(jīng)配置完成。后續(xù)的二進(jìn)制add、commit、push同正常的代碼提交完全一致,只是在push時會顯示
git push 時lfs track的文件顯示

refrence:
https://git-lfs.github.com/
https://packagecloud.io/github/git-lfs/install

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git,從https:/...
    落魂灬閱讀 12,850評論 4 54
  • 這是我在學(xué)習(xí)Git的過程中所做的讀書筆記的相關(guān)總結(jié),希望能對剛剛接觸Git或Github的小伙伴們帶來一點點幫助,...
    sonack閱讀 2,639評論 9 56
  • 本文為 Git教程的學(xué)習(xí)筆記,教程源自廖雪峰的博客。這是一個由淺入深,學(xué)完后能立刻上手的Git教程。另,附上另一本...
    七弦桐語閱讀 6,498評論 5 47
  • 你不用擔(dān)心自己不夠好,因為我也不完美。 01 L先生出差的那幾天,我剛開始還特別高興,終于不用有人管著我熬夜追劇,...
    徐慕熹微閱讀 3,611評論 87 118
  • 她的名字自遠(yuǎn)方傳來,所經(jīng)之處有虹彩。 她的身影自詩鄉(xiāng)走來,所到之處有花海。 信不信都已經(jīng)注定,回頭看也回不回來。 ...
    木土有阿杜閱讀 353評論 0 0

友情鏈接更多精彩內(nèi)容