원격 브랜치 풀링
Git pull 명령 을 사용하여 원격 저장소의 최신 변경 사항을 로컬 저장소에 적용할 수 있습니다.
예를 들어 원격 브랜치가 로컬 브랜치의 업스트림이라고 가정합니다. 원격 브랜치에는 아래와 같이 로컬 브랜치의 모든 변경 사항이 포함됩니다.
![원격 브랜치는 로컬 브랜치의 업스트림입니다. Diagram displaying an updatream branch.](/static/552cafbef8bd4368b619449e22702322/5a190/01.png)
이 경우 원격 브랜치(origin/main)에서 로컬 브랜치(main)로 병합을 적용한다면 fast-forward 병합이 됩니다.
![Diagram displaying a fast-forward merge.](/static/99a76c2026cd715b8a71fbdce94dc836/5a190/02.png)
그러나 로컬 메인 브랜치의 변경 사항이 원격 오리진/메인 브랜치에 없는 경우 pull 명령은 병합을 실행하고 이러한 변경 사항을 함께 묶는 병합 커밋을 생성합니다.
![Git은 로컬 브랜치가 원격 브랜치와 다른 경우 풀링하기 전에 병합 및 커밋해야 합니다. Diagram displaying a merge and commit before a pull.](/static/04a22a905afb3b77b2a29d5673d147fc/5a190/03.png)
풀링을 실행할 때 로컬 저장소에 병합 커밋이 자동으로 생성됩니다. 충돌이 있는 경우 충돌을 해결하고 병합을 수동으로 커밋해야 합니다.
![Diagram displaying no conflict auto merge.](/static/d309d34e7532888bd28c7927986bcda7/5a190/04.png)
충돌이 없으면 커밋이 자동으로 병합됩니다.