inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

빠르게 git - 핵심만 골라 배우는 Git/Github

원격저장소(github)로 협업하기 3가지에 대해 질문이있습니다.

381

김코딩

작성한 질문수 1

1

안녕하세요. 좋은강의 잘 들었습니다.!

다만 질문이 한가지 있는데 원격저장소(github)로 협업하기에서 3가지 말씀해주셨는데

3번째 (나도 변하고 원격저장도소 변한경우)

 -> 이 경우도 2번째 (나는 변함이 없고 원격 저장소가 변한경우) 방법처럼 pull받아서 (충돌이 발생한다면) 충돌을 해결해주고 push 하면 되지 않나요??

버전관리시스템 git github

답변 3

0

강민철

네, fork를 해 온 나의 master 브랜치와 추가하고자 하는 새로운 기능/패치를 담은 브랜치를 구분하기 위함입니다 :)

0

김코딩

아아 이제 이해됬네요!! 좋은 설명감사드립니다!! 추가적으로 pr을 날릴때 브랜치를 따로 파서 날리는데 그 이유가 pr용 브랜치,  내 메인 로직 작성 브랜치를 나누어서 각각의 기능을 분리하려고 하는 것인가요??

0

강민철

안녕하세요 :) 좋게 들어주셨다니 너무 감사합니다~

.

네, 말씀하신 것 처럼 나도 변하고, 원격 저장소도 변한 경우

(만일 충돌이 일어나는 부분을 홀로 해결할 수 있다면)

 pull 해준 뒤 push해 줘도 merge가 가능합니다.

.

하지만, 만일 pull request를 이용한 코드 논의 없이 

원격저장소를 다시 pull 한다면,

.

내가 열심히 내 저장소에서 뚝딱뚝딱 작업을 하고 있던 내용을

파기해야  하는 상황이 생길 수 있어요.

.

예를 들어보자면, 원격 저장소에서 아래와 같은 코드가 있엇다고 가정해보죠 

ABCD

근데 질문자님께서는 이 코드를 pull 해 와서, 

ABDDE

로 바꾸었다고 가정해봅시다. (C가 D로 바뀌고 E가 새로 추가되었습니다)

.

이 상태로 push하려고 할 때, 두 가지 문제점이 생길 수 있습니다.

1. 원래 원격저장소의 주인이 C를 D로 바꾸길 원치 않은 경우

> 이 경우, 코드에 대한 논의 (pull request)가 없다면, 이 코드를 받을지 말지에 대한 커뮤니케이션을 하기 어렵겠죠.

2. 질문자님께서 코드를 ABDDE로 바꾸는 동안 원격저장소가 BBCDA로 바뀐 경우

> 이 경우 충돌을 해결하기 위해 질문자님께서 애써서 작성한 E라는 코드는 버려하 할 것이고 BBCDA로 바꾸어야 할 겁니다.

이건 질문자님이 보내려던 코드가 애초에 아니죠.

.

요약하자면, 진행 중인 프로젝트에서는 (원격저장소가 수시로 변하는 상황에서는),

pull request 자체가 "코드에 대한 논의"이기 때문에, 협업을 할 때에는 pull request를 통해

"나 이렇게 수정했어~ 한 번 봐 줄래?"를 알려주는 것이

훨씬 안전하고 질문자님의 의도와 합치되는 코드를 원격저장소에 반영하기도 쉽습니다.

pull request에 관해

0

35

1

로컬과 원격의 상호작용 강의 질문

0

131

2

password authentication was removed

0

223

2

section3부터 맥북에서 화면이 안나옵니다.

0

207

2

Git bash 우클릭 보이지 않음

0

349

1

원격 저장소 조회(추가)

0

172

1

혹시 아래처럼 계속 파일을 찾을 수 없다는 건 어떤 의미일까요..

0

137

1

Git 맥북 다운로드

0

293

2

Git bash 다 마우스 우클릭해도 보이지 않습니다

0

413

2

pr 이후 브랜치 삭제 질문드립니다

0

952

2

블로그

0

255

2

github에서 push오류

0

261

1

reset에서 head

0

333

1

git branch 관련 질문

0

217

1

Section 2 / 4강 / 3:23초 질문

0

166

1

diff & revert

0

267

1

이슈 번호를 잘못 명시한 커밋을 삭제하는 방법

0

1179

1

강의 "로컬과 원격의 상호작용 실습 (+충돌이 난 경우)" 편의 영상 7분 38초 쯤에서 질문 드립니다.

0

416

1

mac사용

0

304

1

원격 branch를 checkout 하면서 새 branch를 만드는 방법

0

442

1

git checkout 과 git switch/restore

0

2424

1

로컬 브랜치 관련 질문합니다.

0

198

3

git stash, git tag 에 대한 강의자료가 있으면 좋겠습니다

0

301

1

브랜치를 main(master) 와 동기화 하고 싶을 때

0

9149

1