• 카테고리

    질문 & 답변
  • 세부 분야

    개발 도구

  • 해결 여부

    해결됨

merge 명령어

20.08.06 03:59 작성 조회수 170

1

안녕하세요.

강의에서 처럼 merge 명령어를 git merge origin/master 이렇게 입력하면 원격 저장소의 브랜치와 머지하는건가요?

git merge feature/a와 같이 입력하면 현재 브랜치에 로컬에 pull해온 feature/a의 변경점을 합치는 것 맞나요?

'origin/'과 같이 원격 저장소 지정 여부에 따른 차이가 헷갈려서 제가 이해한게 맞는지 궁금합니다.

그리고 위 내용이 rebase를 사용해서 합칠때도 동일하게 적용이 되는건가요?

항상 빠르고 명쾌한 답변 감사합니다.

답변 1

답변을 작성해보세요.

1

안녕하세요? hp님

이해하신게 맞습니다.

git merge origin/master라면 origin(원격) 저장소에 있는 master 브랜치로 merge하는 것이고요

git merge master라면 현재 본인 로컬에 있는 master 브랜치로 merge하는 것입니다.

이 때 주의하실게 있는데요, git merge origin/master를 하실 때 로컬 브랜치의 상태를 최신화 해주셔야 합니다.

git pull이나 git fetch로 원격에 있는 브랜치 정보들을 최신으로 가져오신 후 git merge origin/master를 해주셔야 합니다.

그렇지 않으면 마지막으로 땡겨온 origin/master를 기준으로 merge가 되기 때문입니다.

직접 깃헙에서 이것저것 테스트 해보시면 더 이해가 잘 되실겁니다.

감사합니다.