Legacy Topics
Asset Server의 설치(Setting up the Asset Server)

에셋 서버 (Team License)

Unity 에셋 서버 개요

Please be aware that the Asset Server is now a legacy product. We recommend using Plastic SCM or Perforce for version control in your Unity project.

PlasticSCM PerForce

Unity Asset Server 은 Unity에 통합된 GUI를 갖춘 에셋 및 버전 관리 시스템입니다. 팀 구성원이 협력하여 서로 다른 컴퓨터에서 같은 작업을 하거나 또는 원격으로 프로젝트 작업을 할 수 있도록 하는 것이 주 목적입니다. 에셋 서버는 여러 기가 바이트의 프로젝트 폴더를 다루고 대용량 바이너리 에셋을 처리하기 위해 최적화되어 있습니다. 에셋을 업로드할 때 Import Settings 및 기타 각 자산의 메타 데이터도 함께 에셋 서버에 업로드됩니다. 파일 이름 바꾸기 및 이동은 이 시스템의 중심이며, 뛰어난 대응이 가능합니다.

It is available only for Team License users. To purchase Team License (if you do not have it as part of Unity Pro) please visit the Unity store at http://unity3d.com/store

Note that Asset Server is a legacy product and is no longer maintained.

소스 컨트롤은 아직 초보?

만약 소스 컨트롤 소프트웨어를 이전에 사용한 적이 없다면, 어떤 버전 관리 시스템이던지 처음에는 약간 불친절하다고 느낄지도 모릅니다. 소스 컨트롤은 모든 에셋의 집합을 저장하는 방식으로 작동합니다 -메쉬, 질감, 재료, 스크립트 및 기타 모든 것-을 어떤 서버의 데이터베이스에 저장합니다. 그 서버는 Unity 실행에 사용하는 것과 마찬가지로 자신의 홈 컴퓨터일지도 모릅니다. 로컬 네트워크에 있는 다른 컴퓨터일지도 모릅니다. 세계의 완전히 다른 곳에 있는 원격 컴퓨터일지도 모릅니다. 가상 컴퓨터조차일지도 모릅니다. 옵션은 많이 있지만 서버의 위치는 전혀 관계가 없습니다. 중요한 것은 어떤 형태로든 네트워크에 액세스할 수 있으며, 게임 데이터를 저장해준다는 것입니다.

어떤 의미에서 에셋 서버는 프로젝트 폴더의 ​​백업 역할을 합니다. 개발하는 동안은 에셋 서버의 컨텐츠를 직접 조작하지 않습니다. 로컬에서 프로젝트를 변경하여 완료했을 때 서버 프로젝트에 대해 Commit Changes 를 실행합니다. 이렇게 하면 로컬 프로젝트 및 에셋 서버 프로젝트는 완전히 동일해집니다.

동료 개발자가 변경했을 때, 에셋 서버는 동료의 프로젝트와 완전히 동일하게 되지만 당신의 것과는 다른 것이 됩니다. 로컬 프로젝트를 동기화하려면 Update from Server을 실행합니다. 이제 팀 구성원이 변경한 사항은 서버에서 당신의 로컬 프로젝트에 다운로드됩니다.

이것이 에셋 서버를 사용한 기본적인 워크 플로우입니다. 기본적인 기능 이외에 에셋 서버는 과거 버전의 에셋으로 롤백, 자세한 파일 비교, 다른 스크립트의 병합, 충돌의 해소, 삭제된 에셋의 복구 등의 기능이 제공되고 있습니다.

에셋 서버 설치

에셋 서버는 단일 서버 설치 및 각 사용자의 클라이언트 설정이 필요합니다. 이 작업을 수행하는 자세한 방법은 [에셋 서버 설정 페이지](Setting up the Asset Server)를 참조하십시오.

이 가이드의 나머지 부분에서는 에셋서버를 배포, 관리, 정기적으로 사용하는 방법을 설명합니다.

Assset Server의 일상적인 사용 방법

이 섹션에서는 Asset Server를 일상적으로 사용하는 데 자주 묻는 작업, 워크 플로우 및 최상의 방법에 대해 설명합니다.

시작하기

만약 Asset Server에 이미 많은 작업이 포함된 팀에 들어가는 경우, 다음 절차에 따라 시작하는 것이 작업을 제대로 시작하는 가장 빠른 방법입니다.

  1. 비어있는 새 프로젝트를 패키지는 모두 임포트 하지 않고 생성
  2. 메뉴에서 Edit->Project Settings->Editor을 선택하여 Asset Server를 version control mode로 선택
  3. 메뉴바에서 Window->Version Control 를 선택
  4. Connection 버튼을 클릭
  5. 사용자 이름과 암호를 입력 (Asset Server 관리자가 제공한 것)
  6. Show Projects을 클릭하고 원하는 프로젝트를 선택
  7. Click Connect
  8. Click the Update tab
  9. Update 버튼을 클릭
  10. 충돌 발생시 로컬 버전을 모두 파기
  11. 업데이트가 완료될 때까지 대기
  12. 준비 완료

워크 플로우의 기초

Asset Server를 사람이 많은 팀에서 사용할 때 일반적으로 작업을 시작하기 전에 서버에서 모든 에셋을 업데이트하는 것이 좋고, 일의 끝 또는 작업이 끝나면 변경 사항을 커밋하는 것이 좋은 습관입니다 . 또한 어떤 뚜렷한 진척이 있었을 경우에는 일하는 도중에도 변경 사항을 커밋해야 합니다. 변경을 정기적으로 자주 할 것을 권장합니다.

서버 뷰 이해하기

Server View는 Asset Server에 연결된 창입니다. 서버 뷰를 열려면 Window->Version Control을 선택합니다.

The <span class="doc-keyword">Overview</span> 탭
The Overview

서버 뷰는 다음의 탭으로 나누어져 있습니다: Overview UpdateCommit. Overview는 로컬 프로젝트 및 서버에 최신 버전과의 차이를 표시함으로써 로컬 변경을 빠르게 커밋하여 최신 업데이트를 다운로드 할 수 있게 합니다. Update는 원격 서버의 최신 변경 사항을 표시하고 로컬 프로젝트로 다운로드 할 수 있게 합니다. Commit에 의해 Changeset를 작성하여 서버에 커밋하고 다른 사람들이 다운로드 할 수 있도록 합니다.

서버에 연결

Asset Server를 사용하기 전에 그것을 연결해야 합니다. 이를 위해 Connection을 클릭하여 연결 화면을 표시합니다 :

Asset Server 연결 화면
Asset Server 연결 화면

다음으로 입력해야 하는 것은:

  1. 서버 주소
  2. 사용자 이름
  3. 암호

Show projects을 클릭하면 Asset Server에서 사용할 수 있는 프로젝트가 표시되는데 그 중 하나에 연결하거나 Connect을 클릭하여 선택합니다. 사용자 이름과 암호는 시스템 관리자가 제공하는 것에 유의하십시오. 시스템 관리자가 Asset Server을 설치했을 때 계정을 만듭니다.

서버에서 업데이트

서버에서 모든 업데이트를 다운로드하려면 Overview 탭에서 Update 탭을 선택하여 최근에 커밋된 Changesets 목록을 확인할 수 있습니다. 이 중 하나를 선택하여 프로젝트에 무엇이 변경되었는지 커밋 메시지와 함께 확인할 수 있습니다. Update를 클릭하면 모든 Changeset 업데이트가 다운로드되기 시작됩니다.

 <span class="doc-keyword">Update</span> 탭
Update

서버에 변경 사항을 커밋

로컬 프로젝트를 변경한 후 서버에 변경 내용을 저장하려면 Commit 탭을 사용합니다.

 <span class="doc-keyword">Commit</span> 탭
Commit

이제 프로젝트에 마지막 업데이트 이후에 행해진 모든 로컬 변경을 참조 할 수 있게 되어, 모든 변경 사항을 서버에 업로드할지 여부를 선택할 수 있습니다. Changeset에 변경을 추가하려면 Changeset 필드에 수동으로 드래그하거나 커밋 메시지 필드 아래의 버튼을 사용하는 방법 중 하나를 수행하십시오. 커밋 메시지를 입력하면 버전 비교를 하거나 나중에 과거 버전으로 전환 복원하는 데 도움이 된다는 것을 잊지 마십시오. 둘 다 아래에서 설명하겠습니다.

충돌 해결

여러 사람이 같은 데이터의 집합에서 작업하는 이상 충돌이 필연적으로 발생합니다. 당황할 필요가 전혀 없습니다. 만약 충돌이 발생하는 경우 Conflict Resolution(충돌 해결) 대화 상자가 프로젝트 업데이트 시 표시됩니다.

 <span class="doc-keyword">Conflict Resolution</span>화면
Conflict Resolution화면

Here, you will be informed of each individual conflict, and be presented with different options to resolve each individual conflict. For any single conflict, you can select Skip Asset (which will not download that asset from the server), Discard My Changes (which will completely overwrite your local version of the asset) or Ignore Server Changes (which will ignore the changes others made to the asset and after this update you will be able to commit your local changes over server ones) for each individual conflict. Additionally, you can select Merge for text assets like scripts to merge the server version with the local version.

__ 참고 : __ 만약 변경 사항을 취소하는 것을 선택한 경우 에셋은 서버의 최신 버전으로 업데이트됩니다 (즉, 자신이 작업을 하고 있었을 때에 다른 사람이 변경한 내용을 반영합니다) . 만약 에셋을 자신이 작업하기 이전의 상태로 되돌리길 원한다면 당신이 체크아웃 한 버전으로 되돌려야 해야 합니다. (아래의 수정 이력 참조와 에셋을 전환할 방법을 참조하십시오.)

만약 로컬의 변경 내용을 커밋할 때 충돌이 발생했을 경우, Unity는 커밋 변경을 거부하고 충돌이 생겼음을 알려줍니다. 충돌을 해결하려면 Update을 선택합니다. 로컬의 변경 내용은 자동으로 덮어 써지지 않습니다. 이 시점에서 Conflict Resolution 대화 상자가 나타나고, 위의 단락에서 설명한 것을 따를 수 있습니다.

수정 이력 참조와 에셋을 되돌리는 방법

Asset Server는 업로드 된 모든 버전의 에셋을 데이터베이스에 저장하고 있기 때문에 언제든지 로컬 버전을 이전 버전으로 되돌릴 수 있습니다. 프로젝트를 복원하거나 한 개의 파일만 복원하는 것 중 하나를 선택할 수 있습니다. 에셋 또는 프로젝트의 과거 버전으로 되돌리려면 Overview 탭을 선택하여 Asset Server Actions 아래에 표시되어 있는 Show History을 클릭합니다. 이제 모든 커밋의 목록이 표시되고 하나의 파일 또는 전체 프로젝트를 이전 버전으로 복원할 수 있습니다.

 <span class="doc-keyword">History</span> 다이얼로그
History 다이얼로그

여기서는 버전 번호 및 추가된 코멘트를 각 에셋 또는 프로젝트 버전과 함께 볼 수 있습니다. 적절한 코멘트가 도움이 되는 이유 중 하나가 이것입니다. 에셋 중 하나 선택하여 그 이력을 확인하거나 Entire Project를 선택하여 프로젝트에 수행된 모든 변경 내용을 볼 수 있습니다. 당신에게 필요한 리비전(Revision)을 찾을 수 있습니다. 리비전 전체를 선택하거나 리비전 중 특정 에셋을 선택할 수 있습니다. 다음 Download Selected File을 클릭하여 선택면 선택된 리버전으로 로컬 에셋을 바꿀 수 있습니다. Revert All Project는 전체 프로젝트를 선택된 리비전으로 되돌릴 수 있습니다.

만약 로컬 버전과 선택한 서버 버전에 차이가 있는 경우, 로컬 버전을 되돌리면, 로컬에 변경된 내용들은 없어지게 됩니다.

만약 로컬 파일의 변경 내용만 삭제하고 싶은 경우에, 당신은 굳이 되돌리기 기능을 이용할 필요가 없습니다. Main Asset Server 창에서 Discard Changes을 선택하여 로컬의 변경 사항을 취소할 수 있습니다. 이렇게하면 서버에있는 프로젝트의 최신 버전을 로컬 프로젝트에 즉시 다운로드합니다.

에셋 버전 비교

두 개의 특정 버전의 차이가 신경이 쓰이는 경우, 이를 명시적으로 비교할 수 있습니다. 이렇게 하기 위해서는 History을 열고 비교하려는 리비전 및 에셋을 선택하고 Compare to Local Version 을 클릭합니다. 만약 두 개의 서로 다른 에셋의 리비전을 비교해야 하는 경우, 오른쪽 클릭하여 컨텍스트 메뉴에서 Compare to Another Revision을 선택하고 비교하고 싶은 리비전을 찾아 선택합니다.

__참고:__이 기능을 수행하기 위해 지원되는 diff/merge 도구가 설치되어 있어야 합니다. 지원되는 도구는:

삭제한 에셋 복구

로컬 상에서 에셋을 제거한 후 커밋을 해도 서버에서 파일이 영구적으로 사라지는 것은 아닙니다. Overview 탭의 History 창을 이용하여 이전버전을 선택하면 해당 에셋은 언제든지 복원할 수 있습니다.

 <span class="doc-keyword">History</span> 다이얼로그
History 다이얼로그

Deleted Assets 항목을 펼쳐 에셋을 목록에서 선택하고 Recover를 누르면 선택된 에셋들은 다운로드 되어 로컬 프로젝트에 다시 추가됩니다. 만약 삭제되었던 에셋이 배치된 폴더가 아직 있는 경우, 에셋은 원래 위치에 배치되고, 그렇지 않은 경우는 로컬 프로젝트의 Assets폴더 밑에 추가됩니다.

유용한 정보 및 자주 묻는 문제

Asset Server를 사용할 때 도움이 되는 유용한 정보와 자주 묻는 문제를 모아 보았습니다:

  1. 어쨌든 백업

  2. 데이터베이스의 백업을 유지하십시오. 이렇게 하는 것은 아주 중요합니다. 하드웨어 문제, 바이러스, 사용자 오류, 등등과 같은 경우에 작업을 모두 잃을 수 있습니다. 그러므로 백업 시스템을 준비하십시오. 백업 시스템을 설정하기 위한 정보는 웹상에 많이 있습니다.

  3. 컴퓨터를 종료하기 전에 서버를 중지하려면

  4. 이것은 PostgreSQL (Asset Server)의 로그에서 “빠른 종료”가 생성되는 것을 피할 수 있습니다. 만약 이것이 발생하면 Asset Server는 부적절한 시스템 종료에 따른 복구를 해야 합니다. 이것은 대형 프로젝트와 수 많은 커밋이 있는 경우 커밋하는데 오랜 시간을 걸릴게 할 수 있습니다.

1 콘솔에서 암호 재설정 * 쉘과 콘솔 또는 명령줄에서 다음 명령에 의해 직접 암호를 재설정 할 수 있습니다 :

    `psql -U unitysrv -d template1 -c"alter role admin with password 'MYPASSWORD'"`
  1. Asset Server에 연결할 수 없음

  2. 암호가 만료되었을 수 있습니다. 암호를 재설정 해보세요.

  3. 또한 사용자 이름은 대소문자를 구별합니다 : “Admin”! = “admin”. 대소문자가 올바른지 확인하십시오.

  4. 서버가 실행 중인지 확인하십시오 :

  5. OS X 또는 Linux는 터미널에서 다음과 같이 입력할 수 있습니다 : ps-aux

  6. Windows에서는 작업 관리자를 사용할 수 있습니다.

  7. 동일 네트워크 상에서 Asset Server가 하나 이상의 컴퓨터에서 작동하고 있지는지 확인하세요. 다른 쪽에 연결되어 있을 수 있습니다.

  8. Asset Server가 64비트 Linux에서 작동하지 않습니다

  9. Asset Server는 32비트용 필수 패키지를 설치하면 64비트 Linux상에서 올바르게 작동합니다. 이렇게 하려면 “dpkg-i - force-architecture”를 사용하세요.

  10. Asset Server 로그를 사용하여 더 많은 정보를 가져옵니다
    • Windows:
      • ProgramFiles\Unity\AssetServer\log
    • OS X:
      • /Library/UnityAssetServer/log
  11. Windows XP에서 “응용 프로그램을 제대로 초기화하지 못했습니다 (0xc0000135)” *이 경우 Windos XP SP2가 필수. NET 2.0을 설치해야 합니다.

Asset Server 트레이닝 완료

Asset Server를 효과적으로 사용하는 데 충분한 지식이 몸에 뱄을 것입니다. 작업을 시작하면서 좋은 워크 플로우의 기본을 잊지 마십시오. 변경 사항은 수시로 커밋하고 뭔가 잃는 것을 두려워 하지 마세요.

Legacy Topics
Asset Server의 설치(Setting up the Asset Server)