Git 리포지토리에서 특정 커밋 가져오기

Ashok Chapagai 2023년1월30일
  1. git fetch를 사용하여 변경 사항을 가져온 다음 커밋 해시를 사용하여 병합
  2. 새 분기에 대한 특정 커밋의 코드 가져오기
  3. 커밋 해시와 함께 git pull 사용
Git 리포지토리에서 특정 커밋 가져오기

때로는 원격 저장소에서 로컬 저장소로 특정 커밋을 풀고 싶을 수 있으며 이를 수행하는 몇 가지 방법이 있습니다. 아래에서 Git 리포지토리에서 특정 커밋을 가져오는 여러 방법을 찾을 수 있습니다.

git fetch를 사용하여 변경 사항을 가져온 다음 커밋 해시를 사용하여 병합

이를 사용하여 원격 저장소에서 변경 사항을 가져온 다음 로컬 코드베이스에 병합하려는 커밋의 해시를 찾을 수 있습니다. 다음 단계를 참조할 수 있습니다.

  • 리포지토리에 대한 최신 변경 사항 가져오기
    git fetch remote <branch_name>
    

    git fetch ​​명령은 지정된 <branch_name>에서 변경 사항을 가져옵니다.

  • 병합할 커밋 해시를 가져오기 위해 Git 로그 보기
    git log
    

    위의 명령은 커밋 해시, 커밋 작성자, 커밋 날짜 및 커밋 메시지와 같은 모든 커밋을 나열합니다.
    --oneline 플래그인 git log --oneline을 사용하여 모든 커밋과 해당 해시를 한 줄로 가져올 수 있습니다.

  • 커밋 해시를 사용하여 원하는 커밋 병합
    git merge <commit_hash>
    

    마지막으로 병합하려는 커밋은 git merge 명령과 함께 커밋 해시를 사용하여 수행할 수 있습니다.

위의 방법을 사용하면 병합된 커밋까지의 모든 커밋도 병합됩니다. 그러나 단일 커밋의 변경 사항을 병합하려면 git cherry-pick를 다음과 같이 사용할 수 있습니다.

git cherry-pick <commit_hash>

새 분기에 대한 특정 커밋의 코드 가져오기

커밋에서 변경 사항을 가져오고 새 분기로 체크 아웃하려면 단일 명령을 사용하여 이를 수행할 수 있습니다.

git checkout -b <new_branch_name> <commit_hash>

위에서 언급한 git log 명령으로 커밋 해시를 검색할 수 있습니다.

커밋 해시와 함께 git pull 사용

이 단계는 첫 번째 방법에서 두 번째 단계까지 언급한 것과 유사합니다. 언급한 대로 수행한 후 두 번째 단계(커밋 해시를 확인하기 위해 git fetch ​​및 git log를 실행한 후).

git pull origin <commit_hash>

위 명령을 사용하면 언급된 커밋의 해시에서 모든 변경 사항을 가져올 수 있습니다.

여기에서 git pullgit fetchgit merge를 결합합니다.

Ashok Chapagai avatar Ashok Chapagai avatar

Ashok is an avid learner and senior software engineer with a keen interest in cyber security. He loves articulating his experience with words to wider audience.

LinkedIn GitHub