IT이야기

이들go get과 go install의 차이점

cyworld 2021. 10. 25. 21:29
반응형

이들go get과 go install의 차이점은 무엇인가요?


잠시 go동안 도구를 사용하면 다음과 같이 보입니다 go get.

  1. (선택적으로) 다운로드,
  2. 컴파일,
  3. 그리고 설치

소프트웨어의 한 부분이지만 go install단순히

  1. 컴파일
  2. 그리고 설치

그것. 이 경우 go install명령이 명령을 go get대체하기 때문에 존재 하는 이유는 무엇입니까?


go install로컬에서 작업할 때 워크플로의 일부입니다. 라이브러리를 사용하고 싶지만 어떤 이유로 변경이 필요하다고 가정해 보겠습니다. 당신은 할 것입니다 :

  • go get -d library, 다운로드만 합니다.
  • 다운로드한 패키지를 변경하십시오.
  • go install library 로컬 버전을 설치합니다.

내가 아는 한 다운로드 하지go get 않아야 함을 나타내는 플래그가 없으므로 여기에서 바꿀 수 없습니다 .go install

새 패키지를 처음부터 개발할 때도 동일한 워크플로가 사용됩니다.


go get 이 순서로 두 가지 주요 작업을 수행합니다.

  • $GOPATH/src/<import-path>가져오기 경로에 이름이 지정된 패키지(소스 코드)와 해당 종속성을 다운로드하고 저장 한 다음

  • 실행 go install

-d플래그 ( go get -d) 지시 go get패키지를 다운로드 한 후 중지; 즉, go get하지 말라고 지시 한다.go install


차이점:

go get // 패키지를 다운로드해야 하는지 확인하고 필요한 경우 다운로드한 다음 컴파일

go install // 패키지 다운로드가 있는 부분을 건너뛰고 그냥 컴파일합니다(누락된 패키지가 있으면 오류가 발생합니다).


GOPATH환경 변수 에 대해

GOPATH환경 변수가 가능하도록하기 위해 설정해야합니다 get, build그리고 install패키지, 그리고 작업 공간의 위치를 지정합니다. Go 코드를 개발할 때 설정해야 하는 유일한 환경 변수일 것입니다.

다시 말하지만, GOPATHGo 설치가 아니라 작업 공간을 가리켜야 합니다.

예를 들어 Windows에서 작업 공간이 에 있다고 결정했다면 값을 다음과 같이 c:\gowork\설정해야 합니다.GOPATHc:\gowork

여기에 이미지 설명 입력

소스 코드는 다음 위치에 있어야 하며 명령 프롬프트에서 c:\gowork\src\<some project folder>\실행한 후에 생성되는 것을 볼 수 있습니다 .go getc:\gowork\src\<some project folder>\c:\gowork\bin\c:\gowork\pkg\

ReferenceURL : https://stackoverflow.com/questions/24878737/what-is-the-difference-between-go-get-and-go-install

반응형