まるコットでメモ的な何か

Github LFSをやめる

100MBを超えるフォントデータをGit管理するためにGithub LFSの設定をした。

その際、画像や3DデータなどもLFS管理するようにしたが、以下の問題点もあり脱LFSする。

  • Github LFSの無料枠はアカウントに対して1GBまでのため複数プロジェクトで使うのはまず無理
  • 3Dモデルの更新をするたび30MBくらいのプロジェクトデータがLFSに乗りすぐに限界を迎える
  • そもそもフォントデータ自体そこまで重要なファイルではないのでgitignoreしていい
  • LFS上のファイルの個別削除は行えず、容量を減らすにはリモートリポジトリ自体を削除する必要がある

100MB超えるファイルは以下のような手順でgit管理から外す

  1. 予めリポジトリまるごとバックアップ取っておく
  2. git filter-repoでリポジトリの履歴から100MBのファイルを消して
     git filter-repo -f --invert-paths --path "path/to/100MBfile"
  3. gitignoreして
  4. プロジェクトの動作に問題がないことを確認して
  5. リモートリポジトリ削除して
  6. Push

100MB超えないファイルはLFS管理から外すだけ

  1. git lfs ls-file で対象ファイル確認
     ・リストを矩形選択してVSCodeに貼り付けて3のコマンドを一括変換して作る
  2. git lfs untrack "*" で全ての追跡パターンを指定
  3. git rm --cached "path/to/file1" "path/to/file2" でファイルを管理対象から一旦除外
  4. git lfs uninstall でGit LFS管理対象から外す
  5. git lfs ls-file で何も出力されない事を確認
  6. (Github LFSのファイル削除するなら)リモートリポジトリ削除して
  7. git add & git commit & push

反省点

Git LFSのデメリットを踏まえた上で導入を検討すべきだった

その他

無料枠の1GBのままPushを続けてたらいつのまにか限界突破してた図

(これ以上Pushしようとすると batch response: This repository is over its data quota. Account responsible for LFS bandwidth should purchase more data packs to restore access. と怒られる)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です