magit에서 여러 자식 저장소 관리


14

magit을 사용하여 여러 자식 저장소를 유지하고 있으며 그 숫자는 계속 증가하고 있습니다. 하나의 명령으로 각각의 프로젝트에서 수동으로 실행 magit-status하는 대신 하나의 명령으로 각각의 상태를 요약 할 수 있도록 이러한 모든 프로젝트를 magit에 알리는 방법이 있습니까?


Thomas Frössman 은 다음과 같이 구현 했다고 언급했습니다 : magit-multi-status.el
npostavs

답변:


17

모든 프로젝트 목록을 magit에게 알리는 방법이 있습니까?

예를 참조 magit-repository-directories하고 magit-repository-directories-depth.

... 하나의 명령으로 각 명령의 상태를 요약해서 보여줍니다.

이 질문을 받았을 당시에는 그러한 명령이 없었지만 지금은 그런 명령을 내 렸습니다. 시도 M-x magit-list-repositories및 참조 설명서 : ( https://magit.vc/manual/magit/Repository-List.html ).


을 사용하여 비슷한 방식으로 수퍼 리포지토리의 모든 하위 모듈을 나열 할 수도 있습니다 M-x magit-list-submodules. 또는 다음을 사용하여 해당 정보 중 일부를 상태 버퍼에 직접 표시 할 수 있습니다.

(magit-add-section-hook 'magit-status-sections-hook
                        'magit-insert-modules
                        'magit-insert-unpulled-from-pushremote)

그런 다음 모든 모듈이 별도의 섹션에 나열됩니다. 변경 모듈은 평소으로 나열됩니다 단계적 변화Unstaged 변경 . RET이 모듈 중 하나에서 해당 리포지토리 q의 상태 버퍼가 표시되고 수퍼 리포지토리의 상태 버퍼로 돌아갑니다.

를 사용하여 하위 모듈을 가져올 수 있습니다 f m.


고마워, 서브 모듈은 갈 길을 보인다. 이 새로운 수퍼 프로젝트에서 다양한 git repos를 복제해야합니까 (그리고 각각의 지루한 구성을 거쳐야합니까) 아니면 공통 디렉토리로 디렉토리를 옮긴 다음 각각을 하위 모듈로 선언 할 수 있습니까?
wilk

당신은 수 mv저장소를,하지만 당신은 여전히해야 할 것입니다 git submodule add git://<module> <module>그들의 각 하나지만, 적어도 모든 리모트와 가지를 다시 설치하는 것보다 낫다는 것을.
tarsius

서브 모듈을 페치하기 위해 <kbd> F m <kbd> 대신 <kbd> f m <kbd> 인 것 같습니다.
wilk

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.