2013-07-11 4 views
2

큰 오래된 CVS 저장소를 git로 마이그레이션했습니다. 내 프로젝트에는 동일한 또는 다른 저장소 폴더에 대한 액세스가 필요한 몇 가지 개발 팀이 있습니다. 그래서 제 아이디어는 중앙 저장소를 여러 저장소로 분리하여 각 팀이 필요한 폴더가있는 저장소 하나에 액세스 할 수 있도록하는 것입니다. 이러한 저장소 뒤에는 통합 저장소가 필요합니다.비슷한 git 리포지토리를 결합하는 방법은 무엇입니까?

그래서 문제는 여러 팀이 액세스해야하는 프로젝트 폴더가 있다는 것입니다. 예를 들어

Team-repo 1: folderA, folderB, folderD 
Team-repo 2: folderC, folderD 
-->Shared repo (repo1 + repo2): folderA, folderB, folderC, folderD 

예 폴더 D에서 결합되어야한다. git에서 이러한 개념을 구현할 수 있습니까?

제 의도는 각 개발 팀이 큰 저장소 대신 하나의 작은 저장소 만 복제하면된다는 것입니다.

답변

1

각각의 "폴더"는 자체 저장소 (적어도 각각의 독립적 인 폴더)에 있어야합니다. RepoA, RepoB, RepoC, RepoD

  • "프로젝트"저장소, git submodule 사용 : Team1, 팀을 2
  • 그런

    당신은 하위 모듈 (http://git-scm.com/book/en/Git-Tools-Submodules)

    • "모듈"저장소의 개념을 사용

      내가 제공 한 URL을 보면 워크 플로가 설명됩니다.

    +0

    정적 인 써드 파티 라이브러리가 아닌 서브 모듈에 만족하지 못했습니다. 몇 가지 급변하는 하위 모듈을 업데이트하기위한 오버 헤드는 미친 문제입니다. – mnagel

    +0

    사실, 그것들은 모두 프로세스와 안정성에 달렸습니다 : 저는 "하나의 모듈"을 사용하여 다른 하나의 모듈을 안정되게 유지하면서 다른 것들을 업그레이드했습니다, 당신의 API가 충분히 안정적이라면 그렇게 작동합니다. – Bruce

    +0

    하지만 서브 모듈에 커밋은 않습니다 원격 저장소 (수퍼 프로젝트)를 업데이트하지 않습니다. 그래서 이것은 내 생각에 너무 복잡 할 것이다. 그런 시나리오를 구현할 다른 기회가 있습니까? – user2451418

    관련 문제