1

그래서 필자는 feature 브랜치에서 master로 간단하게 병합했다고 생각했습니다. 그러나 Git Extensions에서는 두 가지 버전의 수정본을 페이드 스타일로 다시 보여줍니다 (이미지 참조). 도대체 무슨 소리 야? 문서가 매우 부족합니다. 만약 내가 master와 branch 모두에서 git status을 수행한다면, 커밋 할 것이 아무것도없고 작업 트리가 깨끗하다고 ​​말합니다.Git 확장 - 동일한 분기에 대해 여러 라벨이 표시되는 이유는 무엇입니까?

Git extensions showing duplicate tags

+0

확실한 점은 왜 맨 위의 3 번째 커밋에는 '원점/마스터'와 '마스터'라는 라벨이없는 이유가 무엇인지 묻는 것입니다. 먼저 커밋? –

+0

그래, 그게 내가 알아 내려고하는거야. –

+0

좋은 질문입니다. 이것을 보았다고 말할 수 없습니다. 여기에 답하려고하는 다른 사람들을 피하기 위해 : 첫 번째 커밋에서 두 개의 로컬 브랜치 (처음 두 개의 레이블)와 두 개의 원격 브랜치를 봅니다. 로컬 브랜치는 어두운 색의 브랜치이며 원격 브랜치는 녹색 브랜치입니다. 그래서 예, 첫 번째 커밋은 원격 지문과 동기화 된 2 개의 로컬 지사, 'Feature-AddThisEnhancements'및 'master'를 갖고 있다고 알려줍니다. 문제는 세 번째 커밋 인 "업데이트 된 프로젝트 참조"에도 두 개의 파스텔 레이블과 그 의미가 나와있는 이유입니다. –

답변

1

은 당신이보고있는 것은 망할 놈의 확장이 두 설정의 효과 : -> 표시 superproject 가지

  • 보기 -

    • 보기> superproject 원격 지점을 표시

    기본적으로 내역을 표시 한 저장소는 주변 저장소의 하위 모듈입니다. 하위 모듈 저장소에는 상위 저장소가 아직 인식하지 못하는 두 가지 커밋이 있습니다.

    설명해 드리겠습니다.

    하위 모듈이있는 저장소에서 커밋 할 때 하위 모듈 저장소가있는 커밋의 sha는 상위 리포지토리에 기록됩니다. 따라서 상위 저장소는 하위 모듈이 세 번째 커밋에 있어야한다고 생각합니다.

    그러나 그 하위 모듈의 저장소는 고유 한 수명을 가지며 상위 저장소가 그 세 번째 커밋을 사용하도록 지시 된 후 또 다른 두 개의 커밋이이 하위 모듈 리포지토리에 추가되었습니다.

    씻긴 라벨은 부모 저장소가 서브 모듈을 있어야한다고 생각하는 곳을 나타냅니다.

  • +0

    예, 정확히 맞습니다! 하위 모듈에서 작업 했으므로 하위 모듈의 변경 사항을 확인하는 것만으로는 충분하지 않았습니다. 또한 부모 저장소에 대한 하위 모듈의 변경 사항을 적용한 다음 커밋해야했습니다. 다시 한 번 감사드립니다! –

    관련 문제