2012-01-06 2 views
6

, 당신은 서브 모듈의 새로운 해시 인 a가 두 번째 커밋 할 슈퍼 프로젝트까지 이동해야합니다.자동 - 커밋 슈퍼 프로젝트에 자식 서브 모듈 해시를

이 믿을 수 없을만큼, 성가신 잊지 용이하고 당신이 그것을하지 않으면 문제의 모든 종류가 발생할 수 있습니다.

내가하고 싶은 것은 :

  1. 내 서브 모듈의 변경 사항을 커밋
  2. 이 서브 모듈 및 슈퍼 프로젝트를 모두 가지고 슈퍼 프로젝트에 자동으로 최선을 다하고 해시는 푸시나요 그들의 원격 원산지 ('git push')

당신이 하위 프로젝트에 있는지, 수퍼 프로젝트가 어디에 있는지를 알아 내고 이것을 자동화하는 가장 좋은 방법은 무엇입니까?

아마 어떤 종류의 서브 모듈에 후크를 후 커밋?

답변

5

git-slave을 사용해 보셨습니까? 이것은 정확하게 설계된 것입니다.

당신은 그 자신 스크립트 수도 있습니다. git 명령에는 큰 도움이 될 수있는 두 가지 옵션, --work-tree--git-dir이 있습니다. 이들을 사용하면 현재 디렉토리를 떠나지 않고도 모든 repo에 대해 작업 할 수 있습니다.

다음은 git submodule foreach --recursive git push입니다.

+0

이상한 제로 upvotes? +1, 적어도. 나는이 명령들에 대해 모른다.) –

관련 문제