Go 프로젝트의 Vendor 폴더 관리: .gitignore 또는 Not?
.gitignore의 Vendor/ 디렉터리를 무시할지 여부는 일반적인 논쟁입니다. Go 개발에서.
.gitignore에서 Vendor/를 무시하는 이유:
-
참조 변경 방지: Vendor는 종속성 버전을 동결하여 방지합니다. 종속성 변경으로 인해 빌드가 중단됩니다.
-
사라지는 프로젝트: 종속성 프로젝트가 사라지면 이를 Vendor/에 두는 것이 지속적인 가용성을 보장합니다.
-
도구 발전: 종속성 관리 도구는 시간이 지남에 따라 발전할 수 있으며 공급업체를 무시하거나 향후 도구와의 호환성을 유지합니다.
-
로컬 수정: Git 저장소의 종속성을 수정하는 경우 추적됩니다.
vendor/를 .gitignore에 포함하는 이유:
-
저장소가 복잡해짐: Vendor 종속성이 크게 증가할 수 있음 저장소 크기.
-
종속성 충돌: 동일한 프로젝트에서 작업하는 여러 팀 구성원이 종속성을 중앙에서 처리하지 않으면 종속성 충돌이 발생할 수 있습니다.
-
대부분의 경우에는 필요하지 않습니다. 프로젝트: 엄격한 종속성 관리가 필요하지 않은 프로젝트의 경우 Vendor/를 무시하는 것은 불필요한 오버헤드입니다.
대체 솔루션:
-
가상 환경: Docker 또는 가상화는 표준화된 도구를 사용하여 격리된 개발 환경을 제공할 수 있으므로 개별 종속성 관리가 필요하지 않습니다.
-
하이브리드 접근 방식: 공급업체/버전 제어를 중단하세요. 단, 이를 생성하기 위한 도구나 문서를 제공하세요.
-
개인 저장소: 공급업체 종속성을 위한 개인 저장소를 유지 관리하여 개발자가 기본 저장소에 직접 포함하지 않고도 동일한 버전을 사용할 수 있도록 합니다.
-
Go 모듈: Go 모듈은 정확한 종속성 버전 관리를 제공하고 벤더링의 필요성을 줄여줍니다.
위 내용은 .gitignore를 사용하거나 .gitignore를 사용하지 않음: Go 프로젝트에 `vendor/`를 포함해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!