유니티 프로젝트 파일이나 솔루션 파일, editorUserSettings.asset 등 버전관리 하지 않아도 되나요?

1 답변

0 투표

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 파일은 사용자별 설정을 저장하는 파일입니다. 예를 들어, 특정 사용자의 에디터 레이아웃, 개인 설정, 최근 열었던 파일 목록 등이 저장됩니다. 이러한 설정은 각 개발자마다 다를 수 있으므로, 버전 관리에서 제외하는 것이 좋습니다.
  • 권장 사항:
    • .gitignore 파일에 다음과 같이 추가합니다:
      ProjectSettings/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 프로젝트를 관리하면 팀 간 일관성을 유지하면서 불필요한 파일이 버전 관리에 포함되지 않도록 할 수 있습니다.

add
...