유니티 프로젝트 깃허브 연결하기

유니티 프로젝트를 깃허브(Github)로 관리하기 위해 보통 다음과 같은 방법으로 시도한다.

  1. 깃허브 사이트에 리포지토리를 생성하고 로컬에 클론한다.
  2. 해당 폴더를 유니티 프로젝트를 지정하려하지만 해당 폴더에는 .git 폴더와 .gitignore와 같은 히든 파일이 있기 때문에 빈 폴더를 선택하라는 메시지를 보게된다.(프로젝트 생성 실패)
  3. 다른 폴더에 유니티 프로젝트를 생성한 후 서브 폴더의 모든 파일을 복사해 붙여 넣기한다.

무척 번거로운 방법이고 비효율적이다. 따라서 먼저 유니티 프로젝트를 원하는 폴더에 생성하고 다음과 같이 터미널에서 원격 리포지토리에 연결하는 방법이 쉽고 깔끔하다.

  1. Github 사이트에서 새로운 리포지토리를 생성한다. 이때 .gitignore도 Unity로 지정해 리포지토리를 생성한다. .gitignore 파일에는 원격 리포지토리에서 관리할 필요가 없는 파일을 필터링하는 역할을 한다. 즉, 이 파일에 명시된 파일들은 무시하고 푸시한다.


    Unity .gitignore 참조

  2. 원하는 폴더에 유니티 프로젝트를 생성한다.

  3. 터미널에서 유니티 프로젝트 경로로 이동한 후 git 초기화 한다.

    1
    2
    3
    $ git init    #깃 초기화
    $ git remote add origin https://github.com/계정명/리포지토리명 #원격 저장소 연결
    $ git pull origin master #원격 저장소에서 가져오기
  4. 대용량 파일을 업로드하기 위해 Git LFS(Large File System)를 설정하고 LFS를 이용해 업로드할 파일들은 다음 명령어를 통해 모두 등록한다.

    git lfs track “<lfs를 사용해 업로들 할 파일 확장자>”

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $ git lfs install         #lfs 초기화

    $ git lfs track “*.zip” #lfs를 사용해 업로드할 파일 타입 추가
    $ git lfs track “*.psd”
    $ git lfs track “*.pdf”
    $ git lfs track “*.tgr”
    $ git lfs track “*.tiff”
    $ git lfs track “*.cubemap”

    $ git add .gitattributes #LFS 정보를 스테이지에 추가

    $ git commit -m “Add gitattributes” #커밋
    $ git push -u origin master #원격 저장소에 푸시
  5. 이제 유니티 전체 프로젝트를 커밋 & 푸시한다.

    1
    2
    3
    $ git add .
    $ git commit -m “Project Upload”
    $ git push

댓글