HOWTO · Git

Git의 원격 저장소로 푸시되지 않은 커밋 나열

Git에서 원격 저장소로 푸시하지 않은 커밋을 볼 수 있습니다.

이 기사는 아직 원격 저장소에 푸시하지 않은 모든 커밋을 나열하는 방법을 보여줍니다.

Git은 생명의 은인입니다. 지점이 리모컨보다 앞서 있을 때 알려줍니다.

그러나 콘솔에는 푸시해야 하는 커밋 수만 표시됩니다. 커밋을 나열하지 않는데 이러한 커밋을 어떻게 볼 수 있습니까?

Git의 원격 저장소로 푸시되지 않은 커밋 나열

이 섹션에서는 예를 사용하여 아직 게시하지 않은 커밋을 나열하는 방법을 설명합니다.

아래 예에서는 리포지토리를 변경하고 브랜치가 원격 브랜치보다 두 커밋 앞서도록 커밋합니다.

두 커밋으로 원격보다 앞서 분기

우리 지점이 두 커밋으로 원격 지점보다 앞서 있음을 알 수 있습니다. 우리는 커밋 자체에 관심이 있습니다.

기술적으로 우리는 origin/mainHEAD 사이의 모든 커밋을 얻고 싶습니다. 아래 그림과 같이 git log 명령을 실행합니다.

$ git log origin/main..HEAD

origin/main과 HEAD 사이의 모든 커밋 가져오기

아래 명령으로 diff를 출력할 수 있습니다.

$ git difftool origin/main..HEAD

git diff origin/main을 사용할 수 있지만 Git의 기본 diff 인터페이스를 사용합니다. git difftool을 사용하여 기본 difftool 및 mergetool인 Meld를 엽니다.

또는 아래와 같이 git log 명령을 실행할 수 있습니다.

$ git log --branches --not --remotes

원격으로 푸시되지 않은 모든 분기의 모든 커밋이 나열됩니다.

또 다른 편리한 명령은 다음과 같습니다.

$ git log @{u}..

간단히 말해서 로컬 리포지토리에서 게시되지 않은 커밋을 볼 수 있습니다. git log 명령은 논의된 여러 플래그와 결합되어 푸시해야 하는 커밋의 전체 목록을 제공할 수 있습니다.