inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

다른 팀원이 최신화시킨 원격 dev 브랜치를 가져올 때...

339

맥스

작성한 질문수 51

0

팀원들과 토이프로젝트를 하다가 궁금한 git pull 과 관련하여 궁금증이 생겨서 질문드립니다... github에 원격 master 브랜치로부터 원격 dev 브랜치를 만들고 거기서 파생된 feature 작업브랜치에서 다시 개인 이름을 넣어 개인 작업 브랜치를 통해 로컬에서 작업했는데요. 이 때, 다른 팀원이 작업한 내용을 dev에 merge 했고 그 최신 내용을 제 로컬 작업브랜치에 추가로 가져오고 싶은데 이럴 때 어떻게 하면 좋을까요...?

 

먼저 로컬 dev 브랜치로 체크아웃을 하고 git pull origin dev 명령어를 통해 로컬 dev 브랜치를 최신화시켰습니다. 그 다음에 개인 로컬 작업 브랜치로 다시 체크아웃하고 git merge dev 를 통해 최신화된 로컬 dev 브랜치를 작업 브랜치에 병합시켰는데요. 커밋 해야할 내역을 보니 이전에 다른 팀원들이 원격에서 최신화한 내용들이 변경사항으로 들어가있더라구요... 그래서 그 부분까지 커밋하게되면 그 분들이 작업한 부분을 제 커밋메세지로 덮어쓸거같아서 걱정입니다.. 제가 어느 부분에서 잘못 진행한걸까요...?

git github

답변 1

0

인프런 AI 인턴

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

초보개발자님이 진행한 과정은 일반적인 워크플로우에 따라 올바르게 진행하신 부분으로 보입니다. 원격 dev 브랜치의 최신 변경사항을 로컬 dev 브랜치에 반영하고, 이를 개인 로컬 작업 브랜치에 병합하는 과정은 협업 시 자주 사용되는 방식입니다.

병합 과정에서 다른 팀원들이 원격에서 최신화한 내용이 변경사항으로 나타나는 것은 정상적인 현상입니다. git merge 명령어를 사용할 때, git은 두 브랜치의 차이점을 합치려고 시도하고, 이 과정에서 양쪽 브랜치의 커밋들을 새로운 커밋으로 통합합니다.

병합 후에 생성되는 커밋에는 여러 개발자의 변경사항이 포함될 수 있으며, 이 커밋 메시지는 병합을 나타내는 메시지로, 다른 개발자의 작업을 덮어쓰지 않습니다. 병합 과정에서 생성된 커밋은 주로 “Merge branch ‘dev’ into [개인 작업 브랜치 이름]“과 같은 메시지를 사용합니다.

따라서, 다른 팀원들의 작업을 커밋 메시지로 덮어쓰는 것이 아니라, 여러분의 작업 브랜치에 dev 브랜치의 변경사항을 정상적으로 병합한 것입니다. 이 과정에서 중요한 것은 병합 시 발생할 수 있는 충돌(conflict)을 적절히 해결하는 것입니다.

만약 병합 과정에서 충돌이 발생하지 않았고, 병합된 커밋이 정상적으로 생성되었다면, 여러분은 올바르게 작업을 진행하신 겁니다. 추후에 이 작업 브랜치를 다시 원격 dev 브랜치에 병합(또는 Pull Request를 통해)할 때, 다른 팀원들의 변경사항과 함께 여러분의 변경사항도 함께 병합됩니다.

변경사항을 확인하는 과정에서 혼동이 생기신 것 같은데, 걱정하지 않으셔도 됩니다. 협업시 git을 사용하는 목적 중 하나가 바로 이러한 변경 관리이며, git는 여러분의 작업이 다른 개발자의 작업을 덮어쓰지 않도록 합니다.

수업자료의 깃허브 저장소가 없는데요..

0

21

1

16강 로컬에서 먼저 테스트

0

36

0

git add와 git commit, git status 강의 내용 질문

0

58

2

카카오톡 sdk 로그인

1

50

1

10:41 그림이 이해가 안갑니다.

0

51

2

강의 수업자료(grabity.me) 내 이미지가 표시되지 않습니다

1

80

2

강의 자료 접근 불가

1

84

1

layout group의 종류 3가지 실무 적합활용이 궁금합니다.

0

76

1

결제기능까지 알려주실수있나요?

1

97

2

보안 점검

1

86

2

스케쥴 설정 질문

0

96

2

강의영상 버퍼링

1

93

4

git status 에서 폴더에 파일을 생성하면 해당 파일이 수정으로 뜨는데 기존 파일 수정시에는 수정내역으로 안뜨네요 왜 그런걸까요?

0

41

1

DESIGN.md 파일이 잘못되었어요

1

86

1

mcp 연결안됌

1

108

2

Github repo Front/Backend 분리 이유가 궁금합니다.

1

98

2

CLI gemini 로그인 안됨

1

1061

2

저는 Auto mode가 없어요

1

103

1

claude에 지시하는 방식 관련

0

85

1

강의 초반에 생긴 질문

1

98

1

frontend/backend 분리개발시

0

89

2

prd생성 관련 소스..

0

90

2

왜 여기서는 둘 다 선택해서 하는걸 안알려주는지 궁금하네요

0

71

1

cherry pick 질문입니다.

0

98

2