Version: 2019.4
로컬 경로
범위 지정 패키지 레지스트리

Git URL

When the Package Manager fetches a package from a Git repository, it adds the package locally to your project. This allows you to easily test unpublished changes, but you cannot use it to contribute to that Git repository. To set up an existing local Git repository as a dependency in your project, use a local path instead.

To use Git packages in a project, make sure the Git client is installed on your machine and that you have added the Git executable path to the PATH system environment variable.

저장소가 Git LFS를 사용하여 파일을 추적하는 경우 Git LFS 클라이언트를 컴퓨터에도 설치해야 합니다. 그러지 않으면 패키지 관리자가 LFS 서버에 저장된 파일을 검색해서 가져오지 못하고, 대신에 오류 또는 경고 메시지 없이 LFS 포인터 파일을 체크아웃합니다.

참고: 또한 Package Manager 창을 사용하여 Git 저장소에서 패키지를 직접 설치할 수도 있습니다. 자세한 내용은 Git URL에서 설치를 참조하십시오.

Git URL을 종속성으로 지정하려면 패키지 이름을 추가하여 버전 숫자나 로컬 파일 경로 대신 Git URL을 사용하여 패키지를 설치하십시오. 예를 들어 다음은 권장 HTTPS 프로토콜을 사용하여 원격 Git를 지정하는 방법을 보여줍니다.

{
  "dependencies": {
    "com.mycompany.mypackage": "https://mycompany.github.com/gitproject/com.mycompany.mypackage.git"
}

패키지 관리자는 다음 양식을 사용하는 https, http, ssh, gitfile 프로토콜을 지원합니다.

  <protocol>://[<user>[:<password>]@]<host>[:<port>]/<path>.git[#<revision>]

이 양식에서 URL이 git로 시작하는 경우 .git 경로 접미사를 건너뛸 수도 있습니다.

  git://[<user>[:<password>]@]<host>[:<port>]/<path>[#<revision>]

또는:

  git+<protocol>://[<user>[:<password>]@]<host>[:<port>]/<path>[#<revision>]

You might need to configure credentials in Git configuration files in order to provide your username and password securely. This is preferable to hard-coding them in the Git URL, which is a major security issue if the project is shared with others.

SSH를 사용하여 인증할 때 Git는 기본 위치의 키를 사용합니다. 하지만 Windows에서 PuTTY를 SSH 클라이언트로 사용하는 경우 GIT_SSH 환경 변수를 설정하여 plink.exe를 가리키도록 만들 수 있습니다.

Unity 외부에서 SSH 키를 설정해야 합니다. 올바른 액세스 권한이 없으면 에디터가 인증 실패를 표시합니다.

특정 호스트에 대한 인증 설정 방법은 도움말 페이지에서 GitLabGitHub를 참조하십시오.

특정 리비전 타게팅

설치할 리비전을 지정할 수 있습니다. 리비전은 Git에서 커밋 해시로 해석되는 표현식입니다. 가장 일반적인 타입의 리비전으로는 커밋 해시, 태그, 브랜치를 들 수 있습니다.

특정 리비전을 타게팅하려면 dependencies 속성의 Git URL에 다음을 추가하십시오. # 뒤에는 리비전(버전 또는 특정 Git 해시)이 붙습니다. 해시를 지정하면 원하는 버전을 정확하게 얻을 수 있습니다. 예를 들어 다음과 같습니다.

{
  "dependencies": {
    "com.mycompany.mypackage": "https://mycompany.github.com/gitproject/com.mycompany.mypackage.git#523c4f291cea796141e7211f4951702984d2e9ca"
  }
}

리비전이 누락되면 패키지 관리자는 원격 저장소의 HEAD 리비전을 사용합니다.

올바른 리비전 설정에 관한 자세한 내용은 Git 리비전에 대한 Git 사용자 매뉴얼 섹션을 참조하십시오.

SSH 프로토콜

ssh 프로토콜을 사용하고 싶은 경우 전체 URL 구문 또는 SCP 짧은 표기를 사용할 수 있습니다.

# SCP 짧은 표기
{
  "dependencies": {
    "com.mycompany.mypackage": "git@mycompany.github.com:gitproject/com.mycompany.mypackage.git"
}
# 전체 SSH 프로토콜
{
  "dependencies": {
    "com.mycompany.mypackage": "ssh://git@mycompany.github.com/gitproject/com.mycompany.mypackage.git"
}

참고: 패스프레이즈를 사용하여 SSH 키를 설정하는 경우 셸 또는 커맨드 라인에 패스프레이즈를 입력해야 하기 때문에 패키지 관리자가 패키지를 검색해서 가져올 수 없습니다. 이 경우 https 프로토콜을 대신 사용하거나, Git와 함께 제공되는 ssh-add 유틸리티를 사용하십시오. 자세한 내용은 Git URL의 인증 문제를 참조하십시오.

FILE 프로토콜 사용

패키지 관리자는 file 접두사가 포함된 파일 경로를 Git URL로 인식하지 않지만, file 프로토콜을 통해 전체 URL을 Git URL로 인식합니다(포맷이 올바른 경우). 다음 예를 참조하십시오.

{
  "dependencies": {
    "com.mycompany.mypackage1": "file://localhost/absolute/path/to/com.mycompany.mypackage1.git",
    "com.mycompany.mypackage2": "git+file:///absolute/path/to/other/com.mycompany.mypackage2"
  }
}
로컬 경로
범위 지정 패키지 레지스트리