공부를 함시다/깃과허브

깃허브 브랜치(branch) & 포크(fork) & 풀리퀘스트(pull request) 사용해보기

갈룩시노테7 2023. 6. 20. 22:10
반응형

깃허브 브랜치(branch)는 독립적으로 작업을 진행시키기 위한 개념입니다.

필요에 의해 만들어지는 브랜치는 다른 브랜치에 영향을 받지 않기 때문에 독립적으로 작업이 가능합니다. 즉 메인 브랜치에서 새로 생성된 브랜치는 해당 구역부터 별개의 값을 가지기에 원하는 방법으로 수정하셔도 무방합니다.

 

그렇기에 하나의 저장를 가지고 여러가지 작업이 가능하고, 만약 해당 작업이 적합하다는 생각이 든다면 메인 브랜치에 병합하거나 해당 작업이 마음에 들지 않는다면 해당 작업을 되돌리는 등 작업 단위로써의 관리를 편하게 할 수 있습니다.

 

포크(fork)는 다른 계정의 원격 저장소를 내 원격 저장소로 들고오는 것을 뜻합니다. 내 계정에서 해당 파일의 브랜치를 새로 만든다고 보셔도 됩니다.

 

풀리퀘스트(pull request)는 포크해서 가져온 브랜치 값을 다시 원본 계정 브랜치에 합쳐주는 과정입니다. 보통 PR이라고 부릅니다.

 

아래는 팀장과 팀원이 브랜치 및 포크를 사용하는 예시입니다. 먼저 팀장 계정으로 접속해 보겠습니다.

 

 

아무 깃허브 레포지터리나 들어갑니다. 아직 git-playground 라는 단어밖에 없습니다.

 

왼쪽의 메인을 눌러 view all branches를 눌러줍니다.

사이트를 이동한 뒤 New branch를 눌러서 새 브랜치를 만듭니다.

이렇게 새 브랜치가 완성되었습니다.

팀원 계정으로 접속하여 해당 저장소로 들어간 뒤 포크를 눌러줍니다.

원하는 이름으로 저장소 이름을 선택한 뒤 포크 생성을 눌러줍니다.

자신의 저장소에 해당 내용이 생성되었습니다.

이제 자신의 저장소로 와서 해당 내용을 수정해 보겠습니다. 아무 파일이나 들어가 오른쪽 연필 버튼을 눌러줍니다.

내용을 변경한 후 해당 내용을 커밋해줍니다.

원하시는 커밋 제목과 그 내용을 입력해 줍니다.

정상적으로 커밋된 것을 확인하실 수 있습니다.

변경하면 이제 상단에 (기존 파일에 두번 커밋이 더 되었다)고 뜹니다.

저 밑줄 친 곳을 클릭하면 변경 사항과 커밋 내용이 나오면서 풀 리퀘스트를 보내는 곳으로 이동합니다. Create pull request를 눌러줍니다.

PR 요청 제목과 해당 요청 내용을 입력하고 PR를 생성합니다. 여기서 base repository를 자세히 보셔서 어느 브랜치에 해당 PR를 요청할 지 잘 확인하시고 보내셔야 합니다.

정상적으로 PR이 생성되었습니다.

이제 팀장 계정으로 다시 돌아와 보겠습니다. 풀 리퀘스트가 하나 요청된 것이 보입니다.

팀원이 PR을 요청했군요 Merge pull request를 눌러줍니다.

요청한 위치를 잘 보고, 해당 병합 내용을 승인시켜 줍니다.

병합이 완료되면 위와 같은 내용이 작성됩니다.

만약 위의 내용을 메인 브랜치가 아닌 다른 브랜치에 적용시켜주었다면 자식이 직접 PR을 넣어야 합니다. 병합을 원하는 브랜치로 들어가 오른쪽의 Contribute를 눌러줍니다.

아까와 마찬가지로 PR 제목과 내용을 입력한 뒤 PR을 생성합니다.

그리고 pull request 탭에 들어가 승인을 눌러주면 됩니다.

이렇게 main에 정상적으로 잘 적용된 것이 보입니다.

반응형