2010-02-28 2 views
8

나는 svn에서 git으로 전환해야하는 방법/방법을 찾고있다.팀간에 공유되는 라이브러리를위한 단일 또는 다중 Git 저장소.

나는 현재 D가 C를 사용하는 C를 사용하여 A를 사용하는 svn의 프로젝트의 다중 계층 세트를 가지고 있습니다. X, Y, Z와 같은 실제 배포 된 프로젝트는 공통 라이브러리 A-D 중 하나를 사용합니다. 목표는 미래 프로젝트와 다른 팀이 기본 라이브러리 (A-D)를 공유하고 더 나은 분기 제어를 가능하게하는 것입니다.

다른 팀이 X, Y, Z에 관여하지 않고 라이브러리 C를 사용할 수있게하려면 svn에서 간단하게 svn 트리의 C 비트를 체크 아웃합니다. 패치 B, 그 다음에. 그들은 같은 실제 repo에 있어도 X, Y, Z를 절대 만지지 않습니다. git에서 무슨 일이 일어나는지는 그리 명백하지 않습니다.

git을 사용하여 설정하려면 어떻게 설정하고 제안 된 설정으로는 위/아래가 무엇인지 제안 해주십시오. 내가 찾고 있어요

특징은 다음과 같습니다

  1. 간단한 태그 (가능한 경우) 그래서
  2. 쉬운 (공통 svn의 루트 또는 단일 자식의 repo와 간단한) 쉽게 전체 코드베이스의 상태를 태그 할 수 있습니다 다른 사람들이 공용 라이브러리를 통합/재사용 할 수 있도록하기 위해 AD
  3. 간단하게 우리가 받아들이거나 무시할 수있는 픽스/패치 (우리가 git에서 원하는 주요 것 중 하나)를 제안 해주었습니다.
  4. 팀은 공유 라이브러리에 사용할 효과적으로 사적 소유의 기능을 가지고하는 (그래서 그들은 그들에 태그를 자신의 타임 라인에 스스로를 해결할 수) 내가 얼마나 확실하지 않다,

힘내 내가 원하는 것을 제공 할 것 단일 대 다수 레포지 문제를 다룰 수 있습니다. 내가 자식을 사용하여 뭔가를 설정하려면

답변

2

, 어떻게 당신은 내가 그것을 설정 제안 [...]

그냥 그들이 매우 저렴 (여러 자식 저장소로 이동하고 타이타닉 대신에 많은 소형 보트와 비슷합니다. 즉, 나는 유연하고 유연함을 좋아합니다.

지금과 그때 나는 '도구'별도의 Git 저장소입니다 그렇게

foo/server 
foo/client 
foo/docs 
foo/tools/ 

'서버', '클라이언트', '문서'모든 폴더처럼 구성되어 프로젝트에 도움이됩니다. 이를 통해 전문 팀 구성원은 자신이 원하는 작업을 정확히 복제하고 작업 할 수 있습니다.

물론 우리가 모든 것을 끌어오고 싶다면 foo (하위 모듈로 나머지를 가져옴)를 복제 할 수 있습니다.

git이 이것을 수행 할 수있게 해주는 것이 정말 좋습니다. 왜 그렇게 활용하지 않으시겠습니까?

[...] 무엇을 당신의 제안 설치와 그나/단점이 있습니다.

제안 사항이 약간 복잡 할 수 있습니다.