ubuntu20.04 安装 Git LFS
文章目錄
- 前言
- 一、Git LFS
- 二、Git LFS的安裝
- 三、使用Git LFS
- 總結(jié)
- 參考資料
前言
因工作需要,要使用Git LFS,主要參考了:https://www.atlassian.com/git/tutorials/git-lfs
一、Git LFS
Git Large File Storage (LFS) 使用 Git 內(nèi)部的文本指針替換音頻樣本、視頻、數(shù)據(jù)集和圖形等大文件,同時(shí)將文件內(nèi)容存儲(chǔ)在 GitHub.com 或 GitHub Enterprise 等遠(yuǎn)程服務(wù)器上。通常用來管理大的二進(jìn)制文件。
Git LFS 通過將倉庫中的大文件替換為微小的指針(pointer) 文件來做到這一點(diǎn)。在正常使用期間,你將永遠(yuǎn)不會(huì)看到這些指針文件,因?yàn)樗鼈兪怯?Git LFS 自動(dòng)處理的。
關(guān)于 LFS 的指針文件:
LFS 的指針文件是一個(gè)文本文件,存儲(chǔ)在 Git 倉庫中,對(duì)應(yīng)大文件的內(nèi)容存儲(chǔ)在 LFS 服務(wù)器里,而不是 Git 倉庫中,下面為一個(gè)圖片 LFS 文件的指針文件內(nèi)容:
指針文件很小,小于 1KB。其格式為 key-value 格式,第一行為指針文件規(guī)范 URL,第二行為文件的對(duì)象 id,也即 LFS 文件的存儲(chǔ)對(duì)象文件名,可以在.git/lfs/objects 目錄中找到該文件的存儲(chǔ)對(duì)象,第三行為文件的實(shí)際大小(單位為字節(jié))。所有 LFS 指針文件都是這種格式。
二、Git LFS的安裝
(1)
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
ubuntun默認(rèn)的軟件倉庫位置在/etc/apt/sources.list文件中,但在/etc/apt/sources.list.d/目錄也有一些軟件源(第三方軟件的源,可以分別存放不同的第三源地址),我們的git-lfs就是在這個(gè)目錄下:
在/etc/apt/sources.list.d/目錄下多了github_git-lfs.list文件:
(2)
sudo apt-get install git-lfs git lfs env--Display the Git LFS environment. Error: Failed to call git rev-parse --git-dir: exit status 128(3)
git init //解決上述問題:Error: Failed to call git rev-parse --git-dir: exit status 128 git lfs install--Install Git LFS configuration.執(zhí)行g(shù)it init 會(huì)生成 /lfs/objects/、/lfs/tmp/目錄。
運(yùn)行 git lfs install 一次,為你的系統(tǒng)初始化后,當(dāng)你克隆包含 Git LFS 內(nèi)容的倉庫時(shí),Git LFS 將自動(dòng)進(jìn)行自我引導(dǎo)啟用。
三、使用Git LFS
(1)
git clone 命令來克隆 Git LFS 倉庫,并且將自動(dòng)為你下載完成檢出過程所需的所有 Git LFS 文件:
使用下面兩個(gè)都可以:
(2)
git pull 命令拉取 Git LFS 倉庫。拉取完成后,所有需要的 Git LFS 文件都會(huì)作為自動(dòng)檢出過程的一部分而被下載:
(3)
git push提交時(shí):
當(dāng)向倉庫中添加新的大文件類型時(shí),你需要通過使用 git lfs track 命令指定一個(gè)模式來告訴 Git LFS 對(duì)其進(jìn)行跟蹤:
這是告訴git lfs哪些文件要被git lfs管理,這步非常重要。
比如:
然后就可以正常的使用git提交lfs文件了:
gitattributes 是一種 Git 機(jī)制,用于將特殊行為綁定到某些文件模式。Git LFS 自動(dòng)創(chuàng)建或更新.gitattributes 文件,以將跟蹤的文件模式綁定到 Git LFS 過濾器。但是,你需要將對(duì).gitattributes 文件的任何更改自己提交到倉庫:
(4)
通過調(diào)用不帶參數(shù)的 git lfs track 命令來顯示 Git LFS 當(dāng)前正在跟蹤的所有模式的列表(以及它們?cè)谄渲卸x的.gitattributes 文件):
總結(jié)
參考man手冊(cè)的使用:
git lfs track "*.iso" git add .gitattributes git add file.iso git commit -m "Add disk image" git push EXAMPLESTo get started with Git LFS, the following commands can be used.1. Setup Git LFS on your system. You only have to do this once perrepository per machine:git lfs install2. Choose the type of files you want to track, for examples all ISOimages, with git-lfs-track(1):git lfs track "*.iso"3. The above stores this information in gitattributes(5) files, sothat file need to be added to the repository:git add .gitattributes4. Commit, push and work with the files normally:git add file.isogit commit -m "Add disk image"git push參考資料
https://www.atlassian.com/git/tutorials/git-lfs
https://zhuanlan.zhihu.com/p/146683392
https://git-lfs.github.com/
總結(jié)
以上是生活随笔為你收集整理的ubuntu20.04 安装 Git LFS的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu18.04 命令行打开计算器
- 下一篇: 提高吞吐率的方法