inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

git bash에서 checkout과 pull이 이해가 안돼요

1104

immio99

작성한 질문수 1

0

제가 master 브랜치에 올라가있는 소스코드를 git clone을 이용해서 받은다음 작업후

git branch a -> git checkout a -> git add . -> git commit -m "first" -> git push origin a
순으로 입력해 push를 했습니다. 이제 이걸 master에 merge 하려고

git checkout master -> git merge a 명령어를 사용할 생각에

git checkout master 명령어를 사용해 브랜치를 master로 바꿨더니 제 로컬에 있는 소스코드가 master에 있던 코드로 교체되었습니다.

 

원래 이렇게 checkout으로 브랜치를 변경하면 자동으로 pull이 되는건가요?

 

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

님께서 질문하신 내용을 바탕으로 설명 드리겠습니다. git checkout 명령어를 사용하셨을 때 자동으로 pull이 되지는 않습니다. git checkout 명령어는 지정한 브랜치로 작업 디렉터리를 변경하는 명령어입니다. 귀하가 마스터 브랜치로 체크아웃했을 때 로컬의 소스코드가 마스터 브랜치의 코드로 보인 것은, 체크아웃한 브랜치의 최신 커밋 상태를 반영하기 때문입니다.

원격 브랜치의 변경사항을 로컬 브랜치로 가져오고자 할 때는 git pull 명령어를 사용합니다. 이 명령어는 원격 저장소의 변경사항을 현재 작업 중인 브랜치로 가져와 병합하는 명령어입니다.

따라서, master 브랜치로 변경 후 원격 브랜치의 최신 상태를 반영하고 싶다면, git checkout master 다음에 git pull origin master 명령어를 사용하여 원격 master 브랜치의 변경사항을 로컬에 반영하셔야 합니다.

0

immio99

감사합니다 제가 checkout 기능에 대해 잘못알고 있었네요.

0

immio99

저 혹시 그러면 제가 a라는 브랜치로 작업중 다른팀원이 master에 merge를 해서 동기화를 시켜야 한다면 어떤 순서로 pull을 받아야 제 작업물이 유지되면서 최신 master를 pull받을 수 있을까요?

강의 추천해주세요

2

29

1

케이테스트 서버 운영 방법

2

51

1

Image Only Query

1

30

2

강사님 Sprint6 은 언제쯤 나오나요?

1

19

1