Egine/Unity

Unity를 Github로 올릴때 Ignore 작성하는법

hustle_D 2025. 1. 29. 14:31
반응형

Unity 프로젝트를 GitHub에서 협업할 때, 불필요한 파일이나 충돌을 일으킬 가능성이 있는 파일들을 git ignore 설정해야 한다.

이러한 파일을 .gitignore에 추가하지 않으면 저장소 용량이 비효율적으로 증가하거나, 팀원 간에 불필요한 충돌이 발생할 수 있다.

 

😒Git에서 무시해야 하는 파일 및 이유

라이브러리 및 빌드 관련 파일

  • Library/
  • Logs/
  • Temp/
  • obj/
  • Build/
  • Builds/

이 폴더들은 Unity가 자동으로 생성하는 캐시, 빌드된 결과물, 로그 파일 등을 포함하고 있는 디렉터리들이다.

Git에 포함할 필요가 없으며, 포함하면 불필요하게 용량이 커지고 충돌이 발생할 가능성이 높다.

 

유저 환경 관련 파일

  • UserSettings/
  • *.suo
  • *.user
  • *.userprefs
  • *.csproj
  • *.pidb
  • *.sln
  • *.tmp
  • *.bak
  • *.swp
  • *.zip

개인 설정 파일 및 일시적인 파일들은 각 개발자의 환경에 따라 다르기에 이를 공유하면 다른 개발자의 환경이 변경될 수 있어 협업 시 문제가 발생할 수 있다.

 

패키지 관리 관련 파일

  • Packages/manifest.json
  • Packages/packages-lock.json

manifest.json은 필요하지만, packages-lock.json은 각자의 환경에 따라 달라질 수 있으므로 Git에 포함하면 불필요한 충돌이 발생할 수 있다.

 

플랫폼별 불필요한 파일

  • *.apk (Android 빌드 파일)
  • *.aab (Android App Bundle)
  • *.ipa (iOS 빌드 파일)
  • *.exe (Windows 실행 파일)
  • *.app (Mac 실행 파일)
  • *.dll (Dynamic Link Library)
  • *.pdb (디버그 심볼 파일)
  • *.dSYM/ (iOS 디버깅 파일)

이 파일들은 빌드된 실행 파일이므로 Git에서 관리할 필요가 없다.

대신, 원본 코드만 저장소에 올리고 빌드는 각자의 환경에서 수행해야 한다.

 

Unity 특정 파일

  • .vs/
  • .idea/
  • .vscode/
  • *.csproj
  • *.sln

Visual Studio, Rider, VS Code 등의 IDE 관련 설정 파일로 해당 ide를 사용하면 자동으로 생성된다.

이 부분은 개인 설정 부분이기에 올릴 필요가 없으니 추가해주자.

 

👌Unity용 .gitignore 파일 생성 방법

프로젝트 폴더에서 .gitignore 파일 생성

Windows: 메모장 또는 VS Code에서 파일을 만들고 .gitignore 확장자로 저장

macOS/Linux: 터미널에서 touch .gitignore 실행

# Unity 자동 생성 폴더 및 파일
[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Bb]uild/
[Bb]uilds/
[Ll]ogs/
[Mm]emoryCaptures/

# User-specific
UserSettings/
*.pidb
*.suo
*.user
*.userprefs
*.csproj
*.sln
*.tmp
*.bak
*.swp
*.zip

# 패키지 및 환경설정 파일
Packages/packages-lock.json

# 플랫폼별 빌드 파일
*.apk
*.aab
*.ipa
*.exe
*.app
*.dll
*.pdb
*.dSYM/

# IDE 관련 파일
.vs/
.idea/
.vscode/
*.csproj
*.sln

.gitignore 적용 방법

github에 저장소를 만들지 않은 상태

  1. GitHub에서 새 저장소(repository) 생성
  2. SourceTree에서 프로젝트 폴더를 Git으로 초기화
  3. SourceTree에서 GitHub 원격 저장소(remote) 연결
  4. .gitignore 파일 추가 및 첫 커밋
  5. GitHub로 푸시(push)

이미 github에 저장소를 만들어 뒀고 clone한 상태

  1. 클론한 프로젝트 폴더에서 .gitignore 파일 생성
  2. SourceTree에서 .gitignore 커밋 및 푸시
  3. 이미 Git에 올라간 불필요한 파일 삭제 후 다시 커밋 & 푸시 (선택 사항)
더보기

이미 Git에 올라간 불필요한 파일 삭제 후 다시 커밋 & 푸시

.gitignore를 추가했지만, 이미 Git에 올라가 있는 불필요한 파일이 있다면 .gitignore에 추가했더라도 Git이 이미 추적 중이라서 계속 변경 사항이 남아 있을 수 있다.

이때는 추가적으로 작업이 필요하다.

 

1. Git 캐시에서 불필요한 파일 제거

SourceTree에서 "터미널" 버튼 클릭 (또는 Git Bash 실행)

 

2. 명령어 실행 

git rm -r --cached .
git add .
git commit -m "Remove ignored files"
git push origin main

 

이 작업을 수행하면 .gitignore에 추가한 파일들이 더 이상 Git에서 추적되지 않고, 원격 저장소에서도 정리된다.

 

주의할 점은 .gitignore는 .txt파일로 만들었다면 적용되지 않는다

확장자명을 보기로 해서 .txt파일이 붙어있는지, 텍스트파일인지 확인해 텍스트라면 확장자명을 지우고 올려주자.

 

반응형