sh1’s diary

プログラミング、読んだ本、資格試験、ゲームとか私を記録するところ

Git LFS のインストールと使い方 (Windows+WSL)

f:id:shikaku_sh:20200228140331p:plain:w300
Git LFS (Large File Storage)

Git はバージョン管理に特化したツールなので、大きいサイズのファイル(ラージファイルと省略します)を含めると、リポジトリーが肥大化してしまうなどの問題があるため、GitHub のラージファイルはメタ情報(ポインタ)に置き換えられて、ファイルの実体は別のところ(LFS サーバー)に格納されます。

Unity は、画像ファイルなんかも GitHub に Push する方が管理上の都合がよいことも多いと思いますが、そういったラージファイルは LFS サーバーに格納されて、Git 上では、メタ情報ファイルに置き換えられています。なので、単純に clone しても画像データが開けないといったことが発生します。

f:id:shikaku_sh:20200228135928p:plain
こんな感じで開けません

そんなわけで、Windows 環境と Windows WSL 環境に Git LFS (Git Large File Storage) をインストールして利用するまでの流れをまとめました。

Windows 10

Windows は、Git LFS からインストーラーをダウンロードして実行します。

f:id:shikaku_sh:20200228135355p:plain:w400
インストーラーの画面

そのあと、コマンドプロンプトを実行して次のコマンドを実行します。

git lfs install

f:id:shikaku_sh:20200228135525p:plain:w500
インストールした例

バージョン確認をしておこう。

git lfs version

f:id:shikaku_sh:20200228135612p:plain:w500
バージョン確認

WSL (Windows SubSystem for Linux - Ubuntu)

WSL は Windows 環境と別に WSL 用として、改めて LFS をインストールする必要があります。

Windows 環境は LFSインストーラーが利用できましたが、WSL はまたは「Installation - Ubuntu」を参考してインストールするか、GitHub から最新版をダウンロードして、インストール用のシェルスクリプトを実行します。

f:id:shikaku_sh:20200228135852p:plain:w400
Ubuntu はこれ

wget https://github.com/git-lfs/git-lfs/releases/download/v2.10.0/git-lfs-linux-amd64-v2.10.0.tar.gz
tar -xvf git-lfs-linux-amd64-v2.10.0.tar.gz
sudo ./install.sh

f:id:shikaku_sh:20200228135704p:plain:w500
ダウンロード例

バージョン確認をしておこう。

git lfs version

f:id:shikaku_sh:20200228135800p:plain:w500
確認例

コマンド

リポジトリーに大量のラージファイルが存在する場合は、LFS を後から処理することができます。

GIT_LFS_SKIP_SMUDGE=1 git clone #GitHub リポジトリー#
cd リポジトリーフォルダー
git lfs pull

エラーが発生してうまく LFS がラージファイルをダウンロードしてくれないこともあります。もう一度実行してみる。

git status
git checkout -f HEAD

または、大きなリポジトリーの場合は LFS 専用のコマンドでクローンしてみるのもよいみたいです。(高速みたいです)

git lfs clone #GitHub リポジトリー#

参考