2012-06-13 2 views
4

여러 프로젝트가있는 Visual Studio 솔루션이 포함 된 git 저장소가 있습니다.다른 저장소의 git 저장소에서 하위 프로젝트 공유

Repo 1: 
Project_1 
Project_2 
Project_3 

Repo 2: 
Project_4 
Project_5 
Project_1 (Same as Project_1 above) 

가 가능 다른 자식 저장소와 자식의 repo에서 프로젝트의 한을 공유 : 나는 내가 처음의 repo에있는 프로젝트 중 하나를 추가 할 또 다른 자식 저장소 (또한 VS)가? 두 번째 저장소에서 작업 할 때 첫 번째 저장소에 속한 프로젝트에 커밋/끌어 오기/밀어 넣기를 수행 할 수 있기를 원하며 첫 번째 저장소를 열면 처음 변경 한 내용을 가져올 수 있기를 원합니다. 두 번째 레포에서 프로젝트.

나는 git submodules을 보았지만 첫 번째 자식 프로젝트의 공유 프로젝트를 별도의 프로젝트로 추출하고 싶지 않기 때문에 도움이되지 않는다고 생각합니다. 첫 번째 레포를 그대로 유지하고 싶습니다 ...

+0

나는'자식 서브 모듈과 우려를 이해 확실하지 않다 '. 그것은 당신이 묘사하고있는 설정에 대해 정확히 맞는 것처럼 보일 것입니다. –

+0

그래서 Project_1은 Repo 2의 서브 모듈이지만 Repo 1은 여전히 ​​떨어져있을 수 있습니까? – Zeno

+0

답장을 설명하고자하는 서식을 얻을 수 없어 답변에 넣었습니다. 어떤 부분이 불분명한지 알려주십시오. –

답변

1

git 저장소의 구조에 혼란 스러울 수 있습니다. 프로젝트를 구조화하는 방법은 각각의 프로젝트에 대한 저장소를 만든 다음 Repo 1Repo 2 수퍼 프로젝트에 추가하는 것입니다.

그래픽 같은 위치에 Project_1 포인트에 대한 submodule URL을 이후

Git     # Main git project directory 
    /Projects 
    /Project_1  # Each one is its own Git repository 
    /Project_2 
    /Project_3 
    /Project_4 
    /Project_5 

    /Repos    # The main repositories that utilize the projects 
    /Repo_1   # The super project directory 
     .gitmodules # The .gitmodules file created by 'git submodules add' 
     --> submodule with url=../../Projects/Project_1 # entry in .gitmodules 
     --> submodule with url=../../Projects/Project_2 
     --> submodule with url=../../Projects/Project_3 
    /Repo_2 
     .gitmodules 
     --> submodule with url=../../Projects/Project_1 
     --> submodule with url=../../Projects/Project_4 
     --> submodule with url=../../Projects/Project_5 

, 때 당신에게 git pushRepo_1 나에 대한 submodule 디렉토리 중 하나에 Repo_2 당신은 실제로 같은 프로젝트에 대한 변경을 추진하고있어 저장소.

git은 두 개의 다른 수퍼 리포지토리에있는 동일한 submodule이 서로 다른 버전을 가리킬 수 있으므로 두 수퍼 프로젝트간에 변경 사항을 동기화하는 데 몇 가지 문제가 있습니다. (예를 들면, 밀어 변경 내용을 커밋하고 submodules을 업데이트하는 방법 등) 자세한 내용은 제가 추천을 위해 당신은 체크 아웃 :

  1. http://speirs.org/blog/2009/5/11/understanding-git-submodules.html
  2. http://git-scm.com/book/ch6-6.html
관련 문제