はじめに
前提条件
これの記事は私のmemoです。好きに使ってください。
↓はじめにやること↓
- Githubアカウントの作成
- GitのDownLoad
- GitLFSのダウンロード
- UnrealEngineのダウンロード
リモートリポジトリでの操作
- リポジトリのNewを選択
- Repository nameに任意の名前を入れる
- リポジトリを公開したい場合は、Publicを選択、そうでない場合はPrivateを選択
- リポジトリのPublic, Privateは後に変更可能
- Add .gitignoreでUnreal Engineを選択
- Create repositoryでリポジトリの作成完了
- Codeの▽を選択し、URLをコピー
リモートリポジトリでの操作はいったん終了
ローカル・Git関連
- GitHub と連携したいプロジェクトに移動し、
git initで初期化 - Git LFS をインストール
git lfs install
What is Git LFS
Git LFS(Git Large File Storage)は、サイズの大きいファイルを Git で扱う際に利用する拡張ストレージです。画像や動画などの巨大なバイナリを リポジトリ本体から切り離し、Git には ポインタファイル だけを保存し、実データは専用の LFS サーバーに保管します。
これによりリポジトリの肥大化を防ぎ、クローンやプルの時間を大幅に短縮できます。大きなバイナリを頻繁に更新しても、Git の履歴が膨らまず快適に運用できる。これがGit LFS の役割です。
- Git LFS の管理対象ファイル(
.gitattributes)を作成
Git LFSに管理してもらうファイルをはじめに定義します。管理する対象は「.gitattributes」というファイルに記載します。以下は、私が利用している.gitattributesファイルです。
.gitattributes
# Unreal Engine Assets
Content/**/*.uasset filter=lfs diff=lfs merge=lfs -text lockable
Content/**/*.umap filter=lfs diff=lfs merge=lfs -text lockable
# Common Binary File Types
*.fbx filter=lfs diff=lfs merge=lfs -text lockable
*.png filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.jpeg filter=lfs diff=lfs merge=lfs -text
*.gif filter=lfs diff=lfs merge=lfs -text
*.tga filter=lfs diff=lfs merge=lfs -text
*.psd filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.ico filter=lfs diff=lfs merge=lfs -text
*.bmp filter=lfs diff=lfs merge=lfs -text
*.tiff filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.ogg filter=lfs diff=lfs merge=lfs -text
*.mp3 filter=lfs diff=lfs merge=lfs -text
*.mp4 filter=lfs diff=lfs merge=lfs -text
*.mov filter=lfs diff=lfs merge=lfs -text
*.avi filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.7z filter=lfs diff=lfs merge=lfs -text
- LFS に正しく紐づいたか確認
Git LFS対象のファイルが正しく追加されたかどうかを以下のコマンド実行で確認
git lfs track
- リモートリポジトリの紐づけ
以下のコマンドでローカルとリモートリポジトリを紐づけ(前項で行ったリポジトリのURL)
git remote add origin [リモートリポジトリのURL]
リポジトリが紐づいているかを、以下のコマンドで確認できる
git remote -v
- gitignoreをローカル反映
git push時に無視するファイルを指定するため、remoteの内容を反映させる。
git pull origin main
ローカルの内容をリモートに反映
以下のコマンドでリモートリポジトリにpushできます。
git add -A
git commit -m "firstCommit"
git push -u origin main
これで以上になります。これで Git LFS + .gitignore + .gitattributes の三点セットがそろい、巨大アセットを安全に管理しながらコードは軽快に差分・マージできる環境が完成しました。