Git의 두 분기에 대한 최근 공통 조상 식별
이 기사에서는 Git에서 최근 공통 조상 커밋을 찾는 방법을 설명합니다. 이는 브랜치를 생성하거나 다른 브랜치에 병합할 때 유용합니다.
더 이상 고민하지 않고 오늘의 의제로 넘어가겠습니다.
Git의 두 분기에 대한 최근 공통 조상 식별
Git에서 두 분기의 공통 조상은 무엇입니까?
아래 이미지를 살펴보세요.
위의 이미지에는 feature
분기를 생성한 main
분기와 feature
분기에서 new feature
분기가 있습니다. main
분기를 없애고 feature
및 new-feature
분기에 집중하겠습니다.
bd9172c
커밋 후에 new-feature
브랜치를 생성한 것을 볼 수 있습니다. 짐작하셨겠지만 bd9172c
커밋은 feature
및 main
브랜치의 최근 공통 조상입니다.
그렇다면 두 가지의 최근 공통 조상을 어떻게 찾을 수 있을까요?
git merge-base
명령만 있으면 됩니다. Git의 문서에서 git merge-base
명령은 git merge
의 가장 좋은 공통 조상을 찾는 데 도움이 됩니다.
그러나 제공된 분기에 대한 가장 최근의 공통 조상을 표시하기 위해 인수로 두 개의 분기를 공급할 수 있습니다.
통사론:
$ git merge-base <Branch 1> <Branch 2>
예를 들어 보겠습니다.
아래 예는 로컬 저장소의 master
및 feature
분기를 보여줍니다. 둘 사이의 공통 조상을 찾기 위해 아래와 같이 git merge-base
명령을 실행합니다.
$ git merge-base master feature
이 명령은 공통 조상에 대한 커밋 해시를 표시해야 합니다.
출력:
아래 명령을 시각적 로그에 사용할 수 있습니다.
$ git log --graph --oneline --all --decorate
다음과 같은 결과를 얻어야 합니다.
이전에 git merge-base
명령을 실행하여 얻은 것과 동일한 커밋 해시인 2dbe38d
커밋의 master
에서 feature
분기가 포크된 것을 볼 수 있습니다.
Git에서 두 개의 브랜치에 대한 가장 최근의 공통 조상 커밋을 git merge-base
명령을 사용하여 가까이에 있는 브랜치를 공급하는 동안 찾을 수 있습니다. 이 명령은 가장 최근의 공통 조상만 가져옵니다.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn