2009-08-17 4 views
1

저는 약간의 프로젝트를위한 저장소로 github을 사용하고 있지만 다른 github 사용자가 작성한 코드도 사용하고 싶습니다.하나의 프로젝트에 여러 자식 노트가 있습니다.

내 프로젝트 내에/library/libraryname 폴더를 설정하여 다른 사용자의 repo에 대한 링크를 유지하고 내 프로젝트를 커밋 할 수 있습니까?

예를 들어 다른 사용자가 나중에 코드를 업데이트하는 경우 주 프로젝트와 동일한 저장소에 그대로 두면서 변경 사항을 쉽게 가져올 수 있기를 바랍니다.

답변

1

원하는 경우 대신 자식 서브 모듈의 git subtree을 사용할 수있는 구글을 참조하십시오. 이것은 좀 더 편리하게 사용할 수 있으며 저장소에서 체크 아웃하는 사람들이 서브 모듈이나 하위 트리에 대해 알 필요가 없습니다. 또한 업스트림을 제출할 준비가 될 때까지 하위 프로젝트에 대한 자체 패치를 쉽게 유지 관리 할 수 ​​있습니다.

-1

- 편집

'아마 가능하지 않습니다.'라는 주장이 삭제되었습니다. 내 주장의 나머지 부분은 여전히 ​​유효합니다.

하지만 어쨌든, 일반적으로 그렇게 빨리 업데이트하고 싶지는 않습니다. 라이브러리의 '안정된'버전을 선호하고 다른 '안정적인'버전이 릴리스 된 경우에만 업데이트합니다 (테스트 한 결과, 반드시 그 사람이 '안정적'이라고 생각하지는 않습니다).

그럼에도 불구하고 (비록 내가 사용하는 SVN에서, 당신은 할 수 없다. 그러나 나는 자식에 대해 구체적으로 알지 못한다.) 당신은 그러고 싶지 않을 것이다.

+0

소위 외관을 사용하면 쉽게 달성 할 수 있습니다. – iElectric

+0

물론 외부 라이브러리를 항상 업데이트하고 싶지는 않지만, 변경 사항을 .zip으로 다운로드하는 것보다 더 좋은 방법이 있는지 궁금합니다. 내 레포에. – Tom

+0

iElectric - 그 사실을 모름. 고마워. 할 수 있더라도 할 수 없다는 것이 내 요점이야. –

3

나는 아마도 git submodule 명령을 찾고 있다고 생각합니다. 또한 Git Submodule Tutorial을 살펴보십시오.

+0

네, 서브 모듈이 필요하다고 생각합니다. 튜토리얼에 대한 링크를 제공해 주셔서 감사합니다. – Tom

+0

서브 모듈은 다른 repo의 특정 커밋 번호 만 나타내는 것처럼 보이며 모든 변경 사항을 표시하기 위해 수퍼 프로젝트를 푸시하기 전에 서브 모듈 푸시가 필요합니다. 누구나 이러한 한계를 확인할 수 있습니까? – Chris

관련 문제