為 Unity 設定 Git 儲存庫

在為 Unity 開發初始化 Git 儲存庫時,有幾件事需要完成。

Unity 忽略資料夾

並非所有內容都應在儲存庫中進行版本控制。你可以將以下模板新增到儲存庫根目錄中的 .gitignore 檔案中。或者,你可以在 GitHub 上檢查開源 Unity .gitignore ,也可以使用 gitignore.io生成一個用於統一的。

# Unity Generated
[Tt]emp/
[Ll]ibrary/
[Oo]bj/

# Unity3D Generated File On Crash Reports
sysinfo.txt

# Visual Studio / MonoDevelop Generated
ExportedObj/
obj/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd

# OS Generated
desktop.ini
.DS_Store
.DS_Store?
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

要了解有關如何設定 .gitignore 檔案的更多資訊,請檢視此處

Unity 專案設定

預設情況下,Unity 專案未設定為正確支援版本控制。

  1. (在 v4.5 及更高版本中跳過此步驟)在 Unity → Preferences → Packages → Repository 中啟用 External 選項。
  2. 切換到 Edit → Project Settings → Editor → Version Control Mode 中的 Visible Meta Files
  3. 切換到 Edit → Project Settings → Editor → Asset Serialization Mode 中的 Force Text
  4. File 選單中儲存場景和專案。

附加配置

使用 Git 和 Unity 專案的幾個主要煩惱之一是 Git 不關心目錄,並且在從它們中刪除檔案後會愉快地留下空目錄。Unity 將為這些目錄製作*.meta 檔案,當 Git 提交不斷新增和刪除這些元檔案時,可能會導致團隊成員之間發生爭執。

將此 Git 合併後掛鉤新增/.git/hooks/資料夾中,以獲取包含 Unity 專案的儲存庫。在任何 Git pull / merge 之後,它將檢視已刪除的檔案,檢查它所在的目錄是否為空,如果是,則刪除它。