프로젝트를 Go 패키지로 사용
Go 모듈 및 임포트 호출.
히스토리 GitLab 17.3 에서 권한이 없는 go get 요청에 404 오류를 반환하도록 변경되었습니다. GitLab 19.4 에서 세분화된 개인 액세스 토큰을 지원하도록 변경되었습니다. 사전 요건: 하위 그룹의 비공개 프로젝트를 Go 패키지로 사용하려면 Go 요청을 인증 해야 합니다. 인증되지 않은 Go 요청은 go get 실패로 이어집니다. 하위 그룹에 속하지 않은 프로젝트는 Go 요청을 인증할 필요가 없습니다. 프로젝트를 Go 패키지로 사용하려면 go get 및 godoc.org 디스커버리 요청을 사용합니다. 다음 메타 태그를 사용할 수 있습니다. go-import go-source Note 유효하지 않은 HTTP 자격 증명으로 go get 요청을 보내면 404 오류를 받습니다. HTTP 자격 증명은 ~/.netrc (MacOS 및 Linux) 또는 ~/_netrc (Windows)에서 확인할 수 있습니다. Go 1.24 이상에서는 GOAUTH 환경 변수로 자격 증명을 제공할 수도 있습니다. 자세한 내용은 GOAUTH 로 인증 을 참고합니다. 비공개 프로젝트에 대한 Go 요청 인증 # 사전 요건: GitLab 인스턴스에 HTTPS로 접근할 수 있어야 합니다. 다음 중 하나가 있어야 합니다. read_api 스코프를 가진 개인 액세스 토큰 . 해당 프로젝트로 범위가 지정되고 Code 리소스에 대한 Download 권한을 가진 세분화된 개인 액세스 토큰 . GOAUTH 로 인증하기 # Go 1.24 이상에서는 GOAUTH 환경 변수 를 사용해 사용자 지정 명령으로 자격 증명을 제공합니다. Note GOAUTH 의 git dir 값은 깊이가 1을 넘는 중첩 하위 그룹의 비공개 프로젝트에서는 동작하지 않습니다. 대신 사용자 지정 명령을 사용합니다. GOAUTH 로 인증하려면 Go 요청에 HTTP 기본 인증 헤더를 추가하는 사용자 지정 명령을 만듭니다. 다음 예시는 git credential fill 이 반환하는 HTTPS 기반 Git 자격 증명을 사용해 gitlab.com 에 대한 요청을 인증합니다. # !/usr/bin/env bash GITLAB_URL="https://gitlab.com" creds=$(echo "url=${GITLAB_URL}" | git credential fill 2>&1) || { printf >&2 'error: git credential fill failed:\n%s\n' "$creds" exit 1 } username="" password="" while IFS='=' read -r key value; do case "$key" in username) username="$value" ;; password) password="$value" ;; esac done <<< "$creds" if [ -z "$username" ] || [ -z "$password" ]; then printf >&2 'error: git credential fill did n