github에서 내 gopath로 패키지를 설치하고 싶습니다.
go get github.com:capotej/groupcache-db-experiment.git
저장소는 여기에 있습니다 .
github에서 내 gopath로 패키지를 설치하고 싶습니다.
go get github.com:capotej/groupcache-db-experiment.git
저장소는 여기에 있습니다 .
답변:
용법:
go get [-d] [-f] [-t] [-u] [-v] [-fix] [-insecure] [build flags] [packages]
가져 오기는 종속성과 함께 가져 오기 경로로 명명 된 패키지를 다운로드합니다. 그런 다음 'go install'과 같은 명명 된 패키지를 설치합니다.
-d 플래그는 패키지를 다운로드 한 후 get을 중지하도록 지시합니다. 즉, 패키지를 설치하지 않도록 지시합니다.
-u가 설정된 경우에만 유효한 -f 플래그는 get -u가 각 패키지가 가져 오기 경로에 포함 된 소스 제어 저장소에서 체크 아웃되었는지 확인하지 않도록합니다. 소스가 원본의 로컬 포크 인 경우 유용 할 수 있습니다.
-fix 플래그는 종속성을 해결하거나 코드를 빌드하기 전에 다운로드 된 패키지에서 수정 도구를 실행하도록 지시합니다.
-insecure 플래그를 사용하면 저장소에서 가져오고 HTTP와 같은 안전하지 않은 체계를 사용하여 사용자 지정 도메인을 확인할 수 있습니다. 주의해서 사용하십시오.
-t 플래그는 get이 지정된 패키지에 대한 테스트를 빌드하는 데 필요한 패키지도 다운로드하도록 지시합니다.
-u 플래그는 네트워크를 사용하여 명명 된 패키지 및 해당 종속성을 업데이트하도록 지시합니다. 기본적으로 get은 네트워크를 사용하여 누락 된 패키지를 확인하지만 기존 패키지에 대한 업데이트를 찾는 데 사용하지 않습니다.
-v 플래그는 자세한 진행 및 디버그 출력을 가능하게합니다.
Get은 설치를 제어하기 위해 빌드 플래그도 허용합니다. 'go help build'를 참조하십시오.
새 패키지를 체크 아웃 할 때 get은 대상 디렉토리 GOPATH / src /를 만듭니다. GOPATH에 여러 항목이 포함 된 경우 get은 첫 번째 항목을 사용합니다. 자세한 내용은 'go help gopath'를 참조하세요.
패키지를 체크 아웃하거나 업데이트 할 때 get은 로컬에 설치된 Go 버전과 일치하는 브랜치 또는 태그를 찾습니다. 가장 중요한 규칙은 로컬 설치가 버전 "go1"을 실행중인 경우 "go1"이라는 분기 또는 태그를 검색하는 것입니다. 그러한 버전이 없으면 패키지의 기본 분기를 검색합니다.
go get이 Git 저장소를 체크 아웃하거나 업데이트하면 저장소에서 참조하는 모든 git 하위 모듈도 업데이트됩니다.
공급 업체 디렉토리에 저장된 코드를 체크 아웃하거나 업데이트하지 마십시오.
패키지 지정에 대한 자세한 내용은 'go help packages'를 참조하세요.
'go get'이 다운로드 할 소스 코드를 찾는 방법에 대한 자세한 내용은 'go help importpath'를 참조하십시오.
이 텍스트는 GOPATH를 사용하여 소스 코드 및 종속성을 관리 할 때 get의 동작을 설명합니다. 대신 go 명령이 모듈 인식 모드에서 실행중인 경우 'go help get'과 마찬가지로 get의 플래그 및 효과에 대한 세부 정보가 변경됩니다. 'go help modules'및 'go help module-get'을 참조하십시오.
참조 : 빌드, 설치, 정리.
예를 들어, 자세한 출력을 표시하면
$ go get -v github.com/capotej/groupcache-db-experiment/...
github.com/capotej/groupcache-db-experiment (download)
github.com/golang/groupcache (download)
github.com/golang/protobuf (download)
github.com/capotej/groupcache-db-experiment/api
github.com/capotej/groupcache-db-experiment/client
github.com/capotej/groupcache-db-experiment/slowdb
github.com/golang/groupcache/consistenthash
github.com/golang/protobuf/proto
github.com/golang/groupcache/lru
github.com/capotej/groupcache-db-experiment/dbserver
github.com/capotej/groupcache-db-experiment/cli
github.com/golang/groupcache/singleflight
github.com/golang/groupcache/groupcachepb
github.com/golang/groupcache
github.com/capotej/groupcache-db-experiment/frontend
$
package github.com/coreos/go-iptables.git: invalid version control suffix in github.com/ path
)에 대한 해결책 .git
은 Github URL에서 접미사 를 제거하는 것 입니다.
-v
합니까?
-v
명령이이 목록에 언급되지는 FML 롤 ... 확실히 그것은 의미 자세한 토
go get
합니까?
먼저 GOPATH가 필요합니다.
는 $GOPATH
환경 변수에 의해 지정된 폴더 (또는 폴더 세트)입니다. $GOROOT
Go가 설치된 디렉토리 가 아님을 알아야합니다 .
export GOPATH=$HOME/gocode
export PATH=$PATH:$GOPATH/bin
우리는 ~/gocode
컴퓨터의 경로를 사용하여 응용 프로그램의 소스와 종속성을 저장했습니다. GOPATH
디렉토리는 또한 패키지의 바이너리를 저장합니다.
그런 다음 Go env를 확인하십시오.
시스템에 $GOPATH
및 $GOROOT
, 아래는 내 환경이 있어야합니다 .
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/elpsstu/gocode"
GORACE=""
GOROOT="/home/pravin/go"
GOTOOLDIR="/home/pravin/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
이제 download go package를 실행합니다.
go get [-d] [-f] [-fix] [-t] [-u] [build flags] [packages]
가져 오기 경로에 따라 이름이 지정된 패키지를 해당 종속성과 함께 다운로드하고 설치합니다. 자세한 내용은 여기 를 참조 하십시오 .
go get
그래서, github.com:capotej/groupcache-db-experiment.git
법적 경로는 무엇인가, 불법 아닌가요?
.git
라인의 끝에서 :go get github.com:capotej/groupcache-db-experiment