두 개의 github go 프로젝트 작업에 대한 모범 사례

王林
풀어 주다: 2024-02-08 23:48:31
앞으로
757명이 탐색했습니다.

处理两个 github go 项目的最佳实践

php 편집기 Baicao가 두 개의 GitHub Go 프로젝트를 처리하는 모범 사례를 소개합니다. 개발 과정에서 우리는 종종 여러 프로젝트 간의 종속성과 코드 협업을 처리해야 합니다. 이 문서에서는 프로젝트 구조를 최적화하고, 종속성을 관리하고, 충돌을 해결하고, 코드의 유지 관리성과 확장성을 개선하는 데 도움이 되는 몇 가지 효과적인 방법과 제안을 공유합니다. 초보자와 숙련된 개발자 모두 이를 통해 개발 효율성과 프로젝트 품질을 향상시킬 수 있습니다. 이러한 모범 사례를 함께 살펴보겠습니다!

질문 내용

저는 github을 기반으로 두 개의 golang 프로젝트를 개발 중입니다. 그 중 하나는 다른 하나에 의존합니다.

프로젝트 B(github.com/B)에 의존하는 프로젝트 A(github.com/A)가 있다고 가정합니다. 이제 프로젝트 B를 수정하고, 코드를 푸시하고, 프로젝트 A에서 go get github.com/B를 실행하여 프로젝트 B의 최신 코드를 가져옵니다.

이 과정은 시간이 많이 걸리고 나에게는 적합하지 않은 것 같습니다. 프로젝트 B의 변경된 파일이 있는 GO_PATH 위치인 줄 알았는데, 다운로드한 GO_PATH 프로젝트가 읽기 전용인 것 같습니다.

더 좋은 방법이 있나요?

해결책

golang 작업 공간 사용

golang 버전이 1.18 이상인 경우 작업 공간 기능을 활용하여 개발 경험을 향상시킬 수 있습니다.

귀하의 예를 사용하여 github.com/A,它依赖于 github.com/B를 얻습니다.

  1. 동일한 상위 폴더에 있는지 확인하세요. 폴더 이름이 workspace
  2. 라고 가정해 보겠습니다.
  3. cd in cdworkspace 中,然后 go mod init ./A && go work use ./B 그런 다음 go mod init ./A && go work use ./B
  4. 실행 <code>workspace 中运行 go 运行 github.com/A github.com/A 실행

결과적으로 로컬 개발 환경에서는 항상 로컬 버전을 사용하게 되므로 github.com/B원격 동기화가 필요하지 않습니다.

이전 버전의 go를 사용하고 있다면 가장 좋은 방법은 이 프로세스를 자동화하는 스크립트를 작성하는 것입니다

위 내용은 두 개의 github go 프로젝트 작업에 대한 모범 사례의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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