우리는 말뚝 박기 업 여러 프레임 워크/라이브러리가 프로젝트를합니다나란히 재귀 망할 놈의 서브 모듈 저희 회사에서
/Framework
/Extensions (depends on Framework)
/Business (depends on Framework & Extensions)
/Project A (depends on Framework & Extensions & Business)
/Project B (depends on Framework & Extensions & Business)
/Project C (depends on Framework & Extensions & Business)
/...
을 지금까지 우리는 모든 프로젝트 및 프레임 워크를 포함하는 큰 자식 저장소를 사용하고, 우리는 git subtree을 사용하여 프레임 워크를 분할하여 공개합니다 (오픈 소스입니다).
우리는 다른 프로젝트의이 큰 저장소를 분할 할 수 싶지만 너무 많은 순환 종속성이 있다는 사실이 나에게 걱정 :
AFAIK, 두 자식 서브 모듈은/자식 하위 트리가 필요로하는 모든 라이브러리 코드 주요 저장소 안에, 그래서 우리는이 같은 프로젝트 구조로 끝날 것
이/Framework
/Extensions/Framework
/Business/Extension/Framework
/Project A/Business/Extensions/Framework
/Project B/Business/Extensions/Framework
/Project C/Business/Extensions/Framework
우리는 모든 곳에서 프레임 워크의 많은 복사본을 가지고 좋아하지 않아, 어느 프레임 워크 폴더에 깊은 얻을 수 있다는 사실 계층 구조. 우리가 원하는 무엇
는 프로젝트 respository이 일부 SHA 들어있는 현재와 측면하여 저장소 측면, 그리고이 SHA을 확인하는 것으로, 풀에 주장이다.
사이드 바이 사이드 서브 모듈/서브 트리를 만드는 방법이 있습니까?
불행히도 이러한 경우가 아니기 때문에 각 프로젝트에서 Framework, Extensions 및 Business를 계속 변경하고 (자체 지사에서 잠시 격리 됨)이 라이브러리의 변경 사항은 프로젝트간에 원활하게 이동한다는 점을 좋아합니다. 엄격한 버전을 가지고 있으며 쉽게 변경/디버깅 할 수 있습니다 (동일한 솔루션에 포함됨). – Olmo
그런 다음 기본 솔루션은 서브 모듈을 사용하는 것입니다. 즉, 각 개발 시스템에 여러 개의 복사본이 있어야합니다. 이 경우 복사본이 있으면 이점이 있습니다. 각 프로젝트가 성공한 다음 변경 사항을 다시 병합 할 수 있습니다. – GoZoner