종속 항목의 모든 버전을 어떻게 관리하나요? 여기에 우리의 대답이 있습니다.
2022 단어 tutorialdevopsopensourcegithub
소개:
GitHub 리포지토리 간의 종속성을 어떻게 관리합니까?
자동화가 없으면 올바른 위치에서 올바른 파일을 업데이트해야 합니다.
그리고 대규모 프로젝트의 경우 Git 리포지토리에는 이 작업을 복잡하게 만드는 복잡한 메시가 있을 수 있습니다.
파트 1: 프로젝트 모양
여러 Git 리포지토리로 분할된 프로젝트에서 찾을 수 있는 클래식 메시 샘플을 보여 주는 것으로 시작하겠습니다.
이 예제는 웹 클라이언트, 모바일 클라이언트 및 데스크톱 클라이언트가 있는 크로스 플랫폼 애플리케이션이라고 가정합니다.
이를 위해 우리는 세 대상 모두에 공통되는 함수 라이브러리를 갖게 됩니다.
종속성:
protocol-lib: string-lib
core-code: string-lib, protocol-lib
desktop-app: core-code
mobile-app: core-code
web-app: core-code
보시다시피 서로 의존하는 총 6개의 Git 리포지토리가 있습니다.
이 예에서 앱의 기본 코드를 포함할 리포지토리 "core-code"는 각 플랫폼(데스크톱 앱, 모바일 앱 및 웹 앱)에서 공유됩니다.
해당 코어 코드는 컴파일을 위해 저장소 "string-lib"및 "protocol-lib"가 필요합니다.
올바른 종속성 파일을 항상 수동으로 편집해야 하는 것은 ***에서 매우 고통스럽기 때문에 잘 구성된 경우 이 작업이 이를 처리합니다.
탐색을 계속하면 "protocol-lib"저장소에도 "string-lib"저장소가 필요합니다. 특정 크기의 프로젝트에는 오류의 원인이 될 수 있는 매우 복잡한 메시 링크가 있을 수 있습니다.
파트 2: GitHub 작업
저장소 "string-lib"에 새 릴리스를 게시할 때 이 작업은 자동으로 저장소 "protocol-lib"및 "core-code"에 풀 요청을 생성하여 올바른 파일을 업데이트하고 종속성 파일의 자체 링크를 변경합니다. (에스). 그리고 이제 저장소 "protocol-lib"에서 PR을 병합하고 새 릴리스를 생성하면 저장소 "core-code"에서 이전에 생성된 PR을 업데이트하여 아직 병합되지 않은 경우 이러한 변경 사항을 추가합니다.
이제 저장소 "core-code"의 변경 사항을 수락하여 "string-lib"및 "protocol-lib"버전을 업데이트할 수 있습니다. 이렇게 하면 "desktop-app", "mobile-app"및 "web-app"의 버전이 한 번에 일괄 업그레이드됩니다.
이제 작업에 집중할 수 있습니다. ;)
https://github.com/lenra-io/create-or-update-pr-action
Reference
이 문제에 관하여(종속 항목의 모든 버전을 어떻게 관리하나요? 여기에 우리의 대답이 있습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/lenra/how-do-you-manage-with-all-the-versions-of-your-dependencies-our-answer-here-bf1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)