Windows環境におけるUnityのGit管理でハマったことのメモ

開発環境

OS:Windows10
Unity Hub:2.0
Unity:2019.1.1
Git:git version 2.21.0.windows.1
保存先:gitlab
※プライベートレポジトリーが使いたかったのでGitlabを利用

WindowsでのGitのインストール

からGitをダウンロード。
インストール時の手順は以下参考。

GitLabでの操作の参考

#Gitlab用の初期設定
git config --global user.name "gitlabのアカウント名"
git config --global user.email "gitlabの登録メールアドレス"

#Pushまでの手順
git init
git remote add origin https://gitlab.com/User名/プロジェクト名.git
#テストファイルの作成
type nul > README.md
git add .
git commit -m "first commit"
git push -u origin master

#Git Clone
git clone https://gitlab.com/User名/プロジェクト名.git
公式ドキュメントではtouchってなってるけどコマンドラインではtouch使えないので、type null使ってREADME作成。

ハマったポイント

warning: LF will be replaced by CRLF in ProjectSettings/XRSettings.asset.
The file will have its original line endings in your working directory

error: open("Temp/UnityLockfile"): Permission denied
error: unable to index file 'Temp/UnityLockfile'
fatal: adding files failed
なんかエラー出てきた。・[Git]open(“Temp/UnityLockfile”): Permission deniedというエラー

どうやらUnityのプロジェクトを開いたままGit管理すると発生するみたい。
Unityのプロジェクトを開いているタイミングだけ生成される一時ファイルの問題かな?
.gitignoreで無視する設定にすれば起動してても問題ないかもしれない。
(設定してないので確認していないが…)

改行コードLFをCRLFに置換しますよ的なのはVisualStudioでコード書いたからかしら…。
このWarningは無視したけどとりあえずGitlabには無事アップロードできた。

【追記】.gitignoreの設定と事後対応

毎回Unity閉じてからcommitできないのはめんどくさいので以下記事を元に.gitignoreのファイルを生成した。

【Unity】.gitignoreの設定方法

ただしすでにgitlabo上のファイルは.gitignoreする前のファイルを残っているのでこれを削除する必要があった。
この件は以下の対応した。

あとからまとめて.gitignoreする方法

なおWindows環境で.gitignoreに含まれたファイルを削除するコマンドを打つとエラーがでた。

$ git rm --cached `git ls-files --full-name -i --exclude-from=.gitignore`

これについてはWindows環境で使えないコマンドがあったからだ。
コマンドラインをbashモードにして叩いたらエラーなく動いた。

Git for Windowsのbashが便利な件

タイトルとURLをコピーしました