2013-05-23 2 views
1

저는 새로운 일을 할 때 ~ 150 Git repos를 상속했습니다. 목표는 현재있는 로컬 서버에서 제거하고 모든 것을 BitBucket으로 마이그레이션하는 것입니다.많은 오래된 Git 프로젝트를 하나의 저장소에 보관

아아아, 이러한 리포지토리의 대부분은 레거시 용도로만 보관되며 각각의 모든 리포지토리에 대해 새로운 BB 저장소를 만들고 싶지 않습니다. 궁극적으로, 나는 "DeepFreeze"라는 새로운 저장소를 만들려고합니다.이 저장소는 하나의 중앙 저장소에 이러한 오래된 저장소를 더 쓸모 없게 저장합니다. 그 저장소는 여전히 액세스 가능하지만 사실상 보이지 않습니다.

  1. 하위 트리가 동결 상태로 모든 병합 :

    이것에 대해가는 두 가지 방법이있는 것 같습니다.

  2. 하위 모듈로 추가하십시오.

서브 트리 병합이 가장 명백하게 보입니다.하지만 새 저장소에 하나의 분기 만 추가한다는 인상을받습니다.

서브 모듈이 더 좋은 옵션 인 것처럼 보이지만 이전 프로젝트가 효과적으로 새 레포에 저장되지 않을 것이고 DeepFreeze를 복제 한 다음 "git submodule update"를 수행하면 실패 할 것입니다. 곧 재편 될 예정인 로컬 서버에 곧 삭제 될 베어 레포 (bare repos)가 있습니다.

의견이 있으십니까? 감사!

+1

왜 각 저장소에 대한 저장소를 만들지 않으시겠습니까? 스크립트가 그렇게 쉽게하지 않겠습니까? –

+0

@ 콜린 - 모든 것을 정리하는 것만으로도 충분합니다. BitBucket을로드 할 때마다 150 개의 고풍스러운 repos를 스크롤하고 싶지는 않지만 어딘가에 * 가야합니다. – aendrew

+2

하지만 저장소의 역사는 어디로 갈 것입니까? 하나의 큰 레포에서 각 레포의 역사를 병합 하시겠습니까? 역사를 유지할 필요가 있습니까 (그렇지 않다면 왜 귀찮게합니까?). 지금 당장은 하위 모듈이 당신이 원하는 해결책을 찾지 못한다고 말할 수 있습니다. 그래도 그 저장소가 어딘가에 있어야합니다 (즉, bitbucket에있는 150 개의 오래된 저장소). –

답변

0

나는 단지 각각을 압축하여 그 zip 파일을 DeepFreeze 저장소에 추가했다. 충분히 잘 작동합니다.

관련 문제