Unityでgitignoreが認識されない対処

f:id:nuakam:20181106113724p:plain

あけましておめでとうございます。nuakamです。
年明け最初の記事はエラーハウツー記事です。
GitにUnityリポジトリを作るところを改めて整理します!

今月からGitHubが無料でプライベートリポジトリを作れるようになりましたね。
作れる数は限られてますがありがたい…いや、使うことあるかな…?

Unityでgitignoreを認識させる

久しぶりに新リポジトリ作りました。
困ったことに.gitignoreが動いてないように見える…

直しましょう!

.
.
.
.
.
.


直った!
f:id:nuakam:20180119185703j:plain


忘れないためにメモDA!

環境

  1. ローカルPCにGit インストール済み
  2. soucetreeではなくコマンドで頑張る(soucetreeわからん…)
  3. Windows10(他のOSでも問題なし)

新規リポジトリから丁寧に作り直す

新リポジトリを作ったとき、後々困らないようにするための手順

  1. リポジトリを作る
  2. ローカルPCにクローン
  3. .gitignoreを作成
  4. FirstPush!

新規作成のファーストコミットは.gitignoreだけにしたほうがいいようです。
プロジェクト自体は2回目以降にするべき(という記事が至るところにありました。何故かは忘れた( ・´ー・`)...)

1.リポジトリを作る

GitHub、Gitbucket、Bitbucket 使ってるサービスによってやり方がちょっと違う。
(面倒くさがらずにコマンドで作ればスマートに統一できる)


ここは各サービスごとに情報がたくさんネットに転がってるので割愛!

2. ローカルにクローン

WindowsはpowerShellを。Linux系Mac系の人はターミナルを開きましょう。

windowsの人はターミナルでもできますが、PowerShellのほうが上位互換で使いやすいです。
クローンした場所にフォルダを作りその場所に移動しましょう。
Shift押しながら右クリックでそこをカレントディレクトリとしてpoweShellが開けます。
f:id:nuakam:20190111191853p:plain



次のコマンドでクローンしてきます

git clone URL(.gitまで)
3.『.gitignore』作成

windows10ではドットファイルが作れません。
Qiitaに作り方がありましたので、ここで躓いた人はご参照を。

qiita.com

いつどこを弄ったのか分かりませんが、私のPCではなぜか問題なく作れました。
謎です。


コマンドでも「新規テキストファイル作成→.txtを消して.gitignoreにリネーム」でもOKです。

作る階層は.gitフォルダやREADME.mdがある場所、トップ階層です。

Unity プロジェクトのignoreテンプレートはこれです

[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Bb]uild/
[Bb]uilds/
[Ll]ogs/
[Aa]ssets/AssetStoreTools*

# Visual Studio cache directory
.vs/

# Gradle cache directory
.gradle/

# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.opendb
*.VC.db

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta

# Unity3D generated file on crash reports
sysinfo.txt

# Builds
*.apk
*.unitypackage

# Crashlytics generated file
Assets/StreamingAssets/crashlytics-build.properties

プロジェクトによって適宜増えることもあるかもしれませんが、殆どの場合使いまわしで大丈夫です。
海外の人が作ったもののようで、世界中の人がこれを使いまわしてるっぽいです。


↓こんな便利なサイトもあります
www.gitignore.io

OS、IDE、プログラミング言語によって自動でignoreを生成してくれます。

今回の例では「Unity VisualStudio window」と検索するとバシッと作ってくれます。
なんとコマンドラインからも作れるようです

www.softantenna.com

気になった方はこちらをどうぞ


環境によってはファイル形式の問題でignoreが反映されないこともあるようです。
.ignoreファイルをShift-Jisとして保存しましょう

4. FirstPush!

First commitはブランチを切らないでmasterに上げましょう(何故かはわかりません)

git add .

git commit -m "firstCommit"

git push

これで.gitignoreがリモートにマージされました。

ここでUnityプロジェクトを持ってきて

git add .

git commit -m "Project Add"

git push

どうでしょう?
反映されたんじゃないでしょうか。

注意点
  1. 『.gitignore』がファイル名です。スペルミスはありませんか?
  2. .gitignoreのおいてる場所はリポジトリのトップですか?

既存のリポジトリにgitignoreを追加する

こちらは後日…
でも改めて作り直したほうがストレスフリーかも