Unity 프로젝트에서 버전 관리가 불필요하거나 주의가 필요한 파일이 있습니다. 프로젝트 파일, 솔루션 파일, 그리고 editorUserSettings.asset
과 같은 파일들은 Unity의 구성 및 사용자별 설정을 저장하는 데 사용되며, 모든 파일이 버전 관리에 적합하지는 않습니다. 아래는 각각의 파일에 대한 설명과 버전 관리 시의 권장 사항입니다.
1. Unity 프로젝트 파일 (.csproj
, .sln
파일)
- Unity는 C# 스크립트를 컴파일하고, 코드 편집기(예: Visual Studio)와 연동하기 위해
.csproj
와 .sln
파일을 자동으로 생성합니다. 이 파일들은 자동으로 생성되고, Unity가 변경할 수 있기 때문에 버전 관리에서 제외하는 것이 좋습니다.
- 권장 사항:
.gitignore
파일에 다음과 같이 추가하여 .csproj
와 .sln
파일을 버전 관리에서 제외합니다:
*.csproj
*.sln
- 이 파일들은 프로젝트를 열 때마다 Unity가 자동으로 재생성하므로, 버전 관리에 포함할 필요가 없습니다.
2. Library
폴더
Library
폴더는 Unity가 프로젝트를 열 때 캐시 데이터와 임시 파일을 저장하는 곳입니다. 이 폴더는 프로젝트의 빌드 속도 및 로딩 속도를 개선하는 데 사용되지만, 각 개발자의 환경에 따라 달라질 수 있으므로 버전 관리에서 제외해야 합니다.
- 권장 사항:
.gitignore
파일에 다음과 같이 추가하여 Library
폴더를 제외합니다:
Library/
3. Temp
, Obj
, Build
폴더
- 이 폴더들도 Unity가 빌드 및 실행 시에 임시 데이터를 저장하는 곳이므로, 버전 관리에 포함되지 않도록 합니다.
- 권장 사항:
.gitignore
파일에 다음과 같이 추가합니다:
Temp/
Obj/
Build/
4. editorUserSettings.asset
파일
editorUserSettings.asset
파일은 사용자별 설정을 저장하는 파일입니다. 예를 들어, 특정 사용자의 에디터 레이아웃, 개인 설정, 최근 열었던 파일 목록 등이 저장됩니다. 이러한 설정은 각 개발자마다 다를 수 있으므로, 버전 관리에서 제외하는 것이 좋습니다.
- 권장 사항:
5. ProjectSettings
폴더 내의 일부 파일
ProjectSettings
폴더는 Unity 프로젝트의 공통 설정을 저장하는 곳으로, 일부 파일은 버전 관리에 포함해야 하고, 일부 파일은 제외해야 합니다.
- 버전 관리에 포함해야 하는 파일:
ProjectSettings/ProjectSettings.asset
: 프로젝트의 전반적인 설정을 포함하므로, 버전 관리에 포함하여 팀 간 일관성을 유지합니다.
ProjectSettings/EditorBuildSettings.asset
: 빌드에 포함될 씬 정보가 저장되므로, 버전 관리에 포함합니다.
- 버전 관리에서 제외해야 하는 파일:
ProjectSettings/EditorUserSettings.asset
: 사용자별 설정이므로 제외합니다.
6. Logs
폴더
Logs
폴더는 Unity 에디터와 플레이 모드에서 생성된 로그 파일을 저장합니다. 이 파일들은 일시적인 디버깅 용도로만 사용되며, 버전 관리에서 제외해야 합니다.
- 권장 사항:
.gitignore
파일에 다음과 같이 추가합니다:
Logs/
7. Build
출력물
- 빌드 결과물(예:
Build/
폴더)은 프로젝트의 실행 파일이나 패키지를 생성한 후의 결과물로, 이를 버전 관리에 포함할 필요는 없습니다.
- 권장 사항:
.gitignore
파일에 다음과 같이 추가합니다:
Build/
최종적인 .gitignore
예시
버전 관리에서 제외해야 하는 파일 및 폴더들을 반영한 .gitignore
예시는 다음과 같습니다:
# Unity generated files
Library/
Temp/
Obj/
Logs/
Build/
ProjectSettings/EditorUserSettings.asset
# Autogenerated project files
*.csproj
*.sln
*.userprefs
# Ignore crash reports, log files, and temporary files
*.pidb
*.booproj
요약
- 버전 관리에서 제외해야 하는 파일:
.csproj
, .sln
, Library
, Temp
, Obj
, Build
, Logs
, ProjectSettings/EditorUserSettings.asset
.
- 버전 관리에 포함해야 하는 파일: 프로젝트의 설정 파일(
ProjectSettings.asset
, EditorBuildSettings.asset
등)과 Unity의 기본 에셋들.
이러한 기준을 따라 Unity 프로젝트를 관리하면 팀 간 일관성을 유지하면서 불필요한 파일이 버전 관리에 포함되지 않도록 할 수 있습니다.