본문 바로가기
공부/Git

팀 협업을 위해 Git을 사용 시 작업 완료 후 push, 팀 remote repository로 변경사항 반영

by son_i 2024. 7. 26.
728x90

협업 프로젝트 Keyword) Github Organization Repository 초기 설정 (fork, clone, upstream) (tistory.com)

 

협업 프로젝트 Keyword) Github Organization Repository 초기 설정 (fork, clone, upstream)

드디어 부트캠프의 마지막 과정인 협업 프로젝트에 들어섰다. 이전에 나 혼자만 github 형상 관리를 하던 것에서 이젠 팀원들과 하게 되었다. 정신 바짝 차리고 잘못 올리지 않게 주의해야겠다. 1.

soni-developer.tistory.com

 

지난 번 팀프로젝트 할 때는 그냥 팀 Repository를 clone 떠와서 작업을 했었는데 이번 토이 프로젝트에서는 좀 제대로 해보고자 작성해놓은 포스팅을 참고해서 fork도 떠오고 upstream 설정도 잘 해주었다.

 

이러면서 생겼던 의문점과 해답을 또 작성하려고 한다.

 

일단 작업 완료 후 

commit, push를 하게되면 내가 fork 떠온 나의 remote repo에 변경사항이 반영되게 된다.

 

여기서 초기 develop 브랜치만 새로 만들어서 썼을 때는 팀 remote repo에 develop 브랜치에 변경사항이 있다고 compare&pullRequest 할 수 있도록 떠있었다.

 

그런데 회원가입 기능을 만들면서 로컬에서 feature/signup 이라는 새 브랜치를 만들고 push를 하자

내 remote repository에는 자동으로 feature/signup 브랜치가 자동으로 생겨 반영이 잘 되었는데 (소스트리

remote repository에는 feature/signup 브랜치가 없고 (당연함 안 만들었으니까)

 뭐 변경사항을 반영하겠냐는 말 같은 게 없었다.

 

그래서 내 remote repo를 확인해보니까 PR을 만들라고 compare&pullRequest  가 활성화 되어있었다 !

(버튼을 누르면 자동으로 팀 레포 PR로 이동하게 됨.)

여기서 팀 remote 레포 | 원하는 브랜치 <- 내 remote 레포 | 변경사항 생긴 브랜치

해가지고 PR 만들고 merge 해줌 된다 ! ㅎㅎ

 

결론 : 내 remote repo 변경사항을 팀 remote repo 브랜치에 반영하려면 PR 만들고 Merge 하면 된다 !


정리

플로우
1. 팀 Orfanization Repository : 팀 전체가 사용하는 원본 레포지토리로 협업이 이루어지는 공간
2. Fork : 팀 레포 -> 내 Github 계정으로 복사. 이를 통해 내 remote repository가 생성됨.
3. Clone : 내 원격 레포지토리를 로컬 레포지토리로 복사
4. Local Development : 로컬에서 작업 진행, 변경사항을 커밋 (Staging Area -> Local Repo)
5. Push : 로컬 변경 사항을 원격 레포지토리에 반영 (Local Repo -> Remote Repo)
6. Pull Request : 내 원격 레포지토리에서 팀 원본 레포지토리로 변경사항 병합하기 위해 생성

Pull Request 생성
1. 자신의 원격 레포지토리로 이동
2. Compare & pull request 클릭
3. 팀 원본 레포지토리 특정 브랜치로 PR작성
4. Merge 하면 반영 끝 ~

 

참고

https://velog.io/@won11/Git-GitHub-Team-Work-%ED%98%91%EC%97%85%ED%95%98%EA%B8%B0

 

[Git & GitHub] Team Work 협업하기

깃, 깃허브 수업에서 배운 내용을 활용하여 팀 과제를 수행했습니다. 실제 업무와 비슷하게 팀장과 팀원의 역할을 나누어 팀 협업을 어떻게 이루어지는지 직접 테스트를 해보았습니다.

velog.io

 

 

728x90

'공부 > Git' 카테고리의 다른 글

Git push 오류) Permission denied 403 에러  (1) 2024.01.03
Git clone을 이용한 협업  (0) 2024.01.02
Git push오류  (0) 2023.07.05