23
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SourceTree+GitHubでGitLFSを使ってみた

Last updated at Posted at 2019-04-28

初めに

UnityをGit管理する際によく発生する問題としてあるのが、.Pngや.dllといったバイナリのデータが変更時に差分が取れずに丸ごとGitのログに乗ってしまい、リポジトリが肥大化するという問題です。
これを解決するために開発されたのがGitLFSですが、基本的にGitLFSは導入がめんどくさい、使い方がよくわからない人がいるなどの理由で小規模の開発時には設定されずに終わることがよくありました。
しかし、GitHubなどのサービスを利用する際に単一のファイルで100mb以上のファイルがプッシュできないといった制限のためにAssetStoreのアセットなどで100mb以上のファイルが含まれるものを使うときに非常に不便でした。
今回はSourceTreeに内蔵させれているGitLFSの機能を使ってみたら思った以上に簡単だったので紹介したいと思います。

やり方

GitLFSを使う流れは以下の通り。

  • LFSに対応してないGitを使っている場合はGitを最新にする
  • リポジトリのメニューからGitLFSを選択して、リポジトリを初期化する
  • GitLFSの追跡/未追跡のファイルからLFSで管理したい拡張子を*.dllなどで設定する
  • 通常通りにコミット、プッシュを行う

基本的にはこれだけで動かせました。
補足で説明をすると、GitLFSのリポジトリの初期化はすでに運用中のGitリポジトリでやっても問題なく初期化できます(データが消えるといったことはありません)
また、追跡/未追跡のファイルの追加はSourceTree上のファイルを右クリック>GitLFSのファイルを追跡でも追加することが可能です。
image.png
この時ファイルを直接指定するので勘違いしそうですが、拡張子が追加されるので特定のファイルのみがLFSに乗るといったことはありません。

参考

23
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
23
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?