
Git을 Unity 버전 관리로 마이그레이션

Git 사용자가 Unity 버전 관리로 전환하는 이유
유연한 무료 오픈 소스 Git은 인기 VCS(버전 관리 솔루션)이지만 기술적인 지식이 적은 사용자에게는 부담스러울 수 있습니다. 아티스트가 문제에 직면하면 이를 고치기 위해 프로그래머를 필요로 합니다. 이는 그들의 툴과 통합되어 있지 않으며, 게임 개발에서 일반적인 대규모 바이너리 파일에 짓눌립니다.
Git 사용자가 Unity 버전 관리로 얻는 이점

빠른 대규모 저장소 및 바이너리 파일 처리
Unity 버전 관리는 망가지지 않습니다. 5TB를 초과하는 저장소에서도 업데이트와 체크인을 다른 솔루션보다 빠르게 처리합니다.

아티스트와의 협업 개선
아티스트는 사용하기 쉬운 워크플로와 파일 잠금 기능을 갖춘 Gluon으로 Unity 버전 관리를 독립적으로 사용할 수 있습니다. 코더는 전체 브랜칭 및 병합을 갖춘 표준 워크플로를 유지할 수 있습니다.

중앙 집중형 또는 분산형으로 작동
VCS를 선택하는 것은 종종 중앙 집중형 또는 분산형 중에 어느 것으로 작업할지 선택하는 것과 같습니다. Unity 버전 관리에는 둘 다 있습니다. Git 스타일 워크플로의 속도와 힘, Perforce 같은 확장성을 결합합니다.

관리 단순화로 더 높아진 유연성
Unity 버전 관리는 다수의 워크플로 및 대규모 파일을 즉시 지원하므로 중복되는 시스템이나 애드온을 둘 필요가 없습니다. 툴체인을 군더더기 없이 고성능으로 유지하세요.

시간을 절약하고 작업 전환을 최소화하세요
Unity의 코드 인식 병합 기술인 SemanticMerge는 중요한 변경에만 집중할 수 있도록 움직인 코드를 트래킹합니다. 구문을 분석하여 일반적으로 수동 병합이 필요한 코드 병합의 16~30%를 자동화함으로써 워크플로를 방해하는 병합 충돌을 대폭 줄입니다.
Unity 버전 관리는 리팩터를 분석하고 여러 파일에서 메서드 등 코드의 부분이 움직였는지 평가합니다. 이를 통해 중요한 변경 사항을 리뷰하는 데만 집중할 수 있습니다. C#, Java, VB.NET 등을 지원합니다.

Unity 버전 관리를 Git 클라이언트로 사용
Unity 버전 관리의 GitSync는 버전 관리와 Git 간에 양방향 동기화를 제공합니다. Unity 버전 관리는 Git 네트워크 프로토콜로 통신하며 패키지를 푸시 및 풀하고 원격 Git 서버에(또는 서버로부터) 병합합니다. 이를 통해 버전 관리 GUI를 Git 클라이언트로 사용할 수 있습니다. Unity 버전 관리는 Git과 유사하게 구조화되어 있기 때문에 양자 간에 모든 체인지 세트, 브랜치, 병합을 교환할 수 있습니다.

빠른 임포트 및 익스포트
Unity 버전 관리는 빠른 임포트 및 빠른 익스포트 커맨드를 구현합니다. 이는 모두 Git의 해당 기능과 완전히 호환됩니다. 이 커맨드는 프로젝트를 Git에서 Unity 버전 관리로 임포트하는 데 사용되며, 필요한 경우 버전 관리에서 안전하게 옮기는 데도 사용됩니다. 정기적인 일일 작업에는 GitSync가 더 쉬운 선택입니다.

Git 생태계 활용
Git의 생태계에 있는 모든 툴은 네이티브 Git 기능을 사용하여 즉시 Unity 버전 관리에 연결할 수 있습니다. 버전 관리를 사용하는 팀은 Git 전용으로 개발된 모든 DevOps, CI, 프로젝트 관리 통합의 이점을 누릴 수 있습니다.
GitServer는 GitSync의 서버측 툴입니다. Unity 버전 관리가 Git 프로토콜(Git 및 HTTP 지원)을 사용하여 저장소에 서비스를 제공하도록 허용함으로써 Git 상호호환성 루프를 닫습니다.
이를 실현하는 게임들

Goodbye Volcano High
노동자 협동 조합 스튜디오가 어떻게 아티스트와 엔지니어 모두를 제작 과정에 효율적으로 참여시킬 수 있었을까요? KO_OP가 Plastic SCM(현 Unity 버전 관리)으로 어떻게 협업을 지원했는지 알아보세요.

Return to Nangrim
Sycoforge가 Unity 툴을 사용해 어떤 식으로 점점 더 규모가 커지는 프로젝트를 관리하고 신속한 반복 게임 개발을 위해 플레이어 피드백을 통합했는지 확인하세요.

Subnautica
Unknown Worlds가 Unity와 Plastic SCM(현 Unity 버전 관리)을 통해 어떻게 Subnautica를 다수의 플랫폼에서 실현할 수 있었는지 확인하세요.