패키지 관리자는 Git 저장소에서 패키지를 페치할 때 패키지를 로컬로 프로젝트에 추가합니다. 이렇게 하면 퍼블리시되지 않은 변경 사항을 쉽게 테스트할 수 있지만 해당 Git 저장소에 기여하는 데는 사용할 수 없습니다. 기존 로컬 Git 저장소를 프로젝트의 종속성으로 설정하려면 로컬 경로를 대신 사용하십시오.
프로젝트에서 Git 패키지를 사용하려면 컴퓨터에 Git 클라이언트를 설치하고 Git 실행 가능 경로를 PATH 시스템 환경 변수에 추가해야 합니다.
저장소가 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, git 및 file 프로토콜을 지원합니다.
<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>]
사용자 이름과 비밀번호를 안전하게 제공하려면 Git 설정 파일의 자격 증명을 구성해야 할 수 있습니다. 이 방식은 Git URL로 하드코딩하는 것보다 낫습니다. 후자의 경우 다른 사람들과 프로젝트를 공유할 때 중요한 보안 문제를 일으킬 수 있습니다.
SSH를 사용하여 인증할 때 Git는 기본 위치의 키를 사용합니다. 하지만 Windows에서 PuTTY를 SSH 클라이언트로 사용하는 경우 GIT_SSH 환경 변수를 설정하여 plink.exe
를 가리키도록 만들 수 있습니다.
Unity 외부에서 SSH 키를 설정해야 합니다. 올바른 액세스 권한이 없으면 에디터가 인증 실패를 표시합니다.
특정 호스트에 대한 인증 설정 방법은 도움말 페이지에서 GitLab 및 GitHub를 참조하십시오.
설치할 리비전을 지정할 수 있습니다. 리비전은 Git에서 커밋 해시로 해석되는 표현식입니다. 가장 일반적인 타입의 리비전으로는 커밋 해시, 태그, 브랜치를 들 수 있습니다.
특정 리비전을 타게팅하려면 dependencies 속성의 Git URL에 다음을 추가하십시오. # 뒤에는 리비전(버전 또는 특정 Git 해시)이 붙습니다. 해시를 지정하면 원하는 버전을 정확하게 얻을 수 있습니다. 예를 들어 다음과 같습니다.
{
"dependencies": {
"com.mycompany.mypackage": "https://mycompany.github.com/gitproject/com.mycompany.mypackage.git#523c4f291cea796141e7211f4951702984d2e9ca"
}
}
리비전이 누락되면 패키지 관리자는 원격 저장소의 HEAD
리비전을 사용합니다.
올바른 리비전 설정에 관한 자세한 내용은 Git 리비전에 대한 Git 사용자 매뉴얼 섹션을 참조하십시오.
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 접두사가 포함된 파일 경로를 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"
}
}