> 백엔드 개발 > Golang > Go `vendor` 디렉토리를 버전 관리에 커밋해야 합니까?

Go `vendor` 디렉토리를 버전 관리에 커밋해야 합니까?

Patricia Arquette
풀어 주다: 2024-12-14 09:13:10
원래의
505명이 탐색했습니다.

Should I Commit the Go `vendor` Directory to Version Control?

Go 종속성 관리: 공급업체 디렉터리 커밋

dep 도구를 사용하여 Go 종속성 작업을 수행할 때 다음과 같은 일반적인 질문이 발생합니다. 생성된 공급업체 디렉토리를 버전 관리에 넣나요? 아니면 저장소를 확인한 후 항상 dep verify를 실행해야 합니까?

공급업체 디렉토리 커밋: 장단점

공식 dep FAQ에 따르면 공급업체 디렉토리 커밋 다음과 같은 장점을 제공합니다.

  • 재현 가능 빌드: 공급업체 디렉터리를 커밋하면 종속성 이름 변경, 삭제, 커밋 기록 수정으로부터 보호하므로 다양한 환경에서 재현 가능한 빌드가 보장됩니다.
  • 빠른 종속성 관리: 건너뛸 수 있습니다. 복제, 병합, 최신 가져오기 등 대부분의 Git 작업 후에 공급업체 디렉터리를 Gopkg.lock 파일과 동기화하는 단계를 보장합니다.

그러나 공급업체 디렉토리를 커밋하는 데는 몇 가지 단점도 있습니다.

  • 저장소 크기 증가: 공급업체 디렉토리는 저장소 크기.
  • PR 차이 혼란: 수정 사항 Gopkg.lock 파일은 공급업체 디렉터리의 변경 사항을 트리거하여 PR 차이를 복잡하게 만들 수 있습니다.

모범 사례

공급업체 디렉터리를 커밋할지 여부 귀하의 특정 요구 사항 및 선호 사항에 따라 다릅니다. 재현성을 우선시하고 종속성 관리 오버헤드를 최소화하는 경우 공급업체 디렉터리를 커밋하는 것이 적합한 선택일 수 있습니다. 그러나 저장소 크기와 차이 명확성이 우려되는 경우 저장소를 체크아웃한 후 항상 dep verify 실행을 고려할 수 있습니다.

위 내용은 Go `vendor` 디렉토리를 버전 관리에 커밋해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿