2013-02-19 4 views
3

팀 데이터 관리 옵션을 모색 중입니다. 현재 버전 제어가 아닌 두 개의 다른 위치에 존재합니다. 나는 경험이 풍부한 자식 사용자의 지혜를 모색하고 있는데 나는 상당히 새로운 자식이다.리모컨으로 서로 연결된 두 개의 git 리포지토리

각 저장소를 저장소로 설정하고 다른 위치를 원격 저장소로 지정하고 싶습니다. 이것이 가능한가? 데이터가 한 곳에서 변경되고 다른 곳에서 변경되지 않는 경우 차이를 조정하려고 할 때 문제가 발생합니까? 두 개의 자식 저장소를 만들고 리모컨으로 설정하고 싶습니다. 그러나 데이터가 동일하다는 것을 알 수 없으므로 (내가 틀렸 으면 좋겠습니다) 의심 스럽습니다.

답변

3

확실히 그렇게 할 수 있습니다. 결국, 그게 바로 VCS에 관한 모든 것입니다. 그러나주의해야 할 몇 가지 문제가 있습니다. 예 : it's not a good idea to push to a non-bare repository. 대신 각 팀이 다른 팀이 자신의 저장소에서 가져 오도록 요청 (예 : 이메일)을 보낼 수 있습니다.

그러나 은 일반적으로 일 뿐이므로 동기화를 쉽게 관리 할 수있는 하나 이상의 중앙 베어 리포지토리가 있어야합니다. 예를 들어, 중앙 개발 리포지토리는 다른 저장소에서 개별 커밋을 가져 오는 것에 대해 생각하지 않고 모든 사람이 밀어 넣고 당기는 것을 허용합니다. 다른 저장소 (또는 첫 번째 저장소의 한 지점)에는 예를 들어 릴리스 분기가 포함될 수 있습니다.

이 전략은 분산 된 VCS의 개념에 역점을 둡니다. 그러나 다른 한편으로는 이처럼 복잡한 도구를 사용하는 것이 좋습니다.

간단히 말해서, 당신이 요구하는 것은 매우 가능합니다. 개발 모델에 맞는지 여부는 결정해야 할 것입니다 (그리고 시행 착오를 할 수도 있습니다).

+0

이 저장소는 매우 자주 푸시되는 저장소가 아니며, 사람이 푸시 할 때도 실제로 저장소를 한 명뿐입니다. 저장소는 대부분 우리가 변경 사항을 추적 할 수 있도록합니다. – jlconlin

+0

귀하의 질문에서 이해 한 바에 따르면, 당신은 서로의 원격지에 두 개의 저장소가 있기를 원합니다. 나는 "이 저장소"에 대한 귀하의 의견을 이해할 수 없습니다. 그럼에도 불구하고 저장소 X (Y에서)로 이동하는 경우 Y를 X의 원격 저장소로 설정할 필요가 없습니다. 두 저장소가 모두 원격 저장소로 있으면 두 저장소가 다른 저장소에서 커밋을 가져 오는 경우가 일반적입니다 사람들은 각각 다른 저장소에서 변경 사항을 가져 오려고합니다. 다시 한 저장소가 두 저장소를 모두 대체 할 수 있습니다. – Shahbaz

+0

또한 일반 답변 만 제공 할 수 있으며 최상의 솔루션을 찾기 위해 특정 작업에 대한 전문 지식을 사용해야합니다. 그러나 git을 사용하면 원하는만큼의 저장소를 만들 수 있다고 말할 수 있습니다. 예를 들어 백업으로, 인터넷이 다운되었을 때를위한 로컬 메인 리포지토리 또는 기타 다른 이유가있을 수 있습니다. 리포지토리와 분기를 혼동하지 않도록하십시오. 즉, 하나의 저장소가 모든 릴리스 분기, 개발 분기, 분기 테스트 등을 처리 할 수 ​​있습니다. – Shahbaz

1

나는 그 방법으로 repo를 설정하지 않을 것이고, 하루가 끝날 때 repo가 ​​당신의 주인으로 남아 있어야한다. 나는 repos를 병합하고 가능하면 다른 하나를 없애거나 다른 하나를 나중에 병합 할 포크로 사용합니다.