Git 협업 workflow

wgnator·2022년 7월 17일
0

7/4 월 - 1일차

Git 으로 협업하는 경험은 이번 원티드 프리온보딩 프론트엔드 코스를 들으며 처음 맞이하였다.

기본 개념 정리:

  • repository: 코드 저장소
  • local/remote repository: local은 작업중인 본인 컴퓨터의 저장소, remote 는 서버에 있는 저장소
  • fork: 마스터 서버 저장소에서 본인의 서버 저장소로 프로젝트를 clone 하여 본인만의 버젼을 작업.
  • branch: 작업 줄기
  • issue: 새로운 작업을 필요로 하는 이슈가 발생했을 시 서버의 일종의 게시판에 등록하는 글. 일반적으로 이슈 하나당 새로운 브랜치를 만들어 작업.
  • add: 작업이 끝난 파일들을 로컬 저장소에 임시 저장하는 것 (staging)
  • commit: staging 된 파일들을 하나의 버젼으로써 본인 로컬 저장소에 등록하는 것
  • pull: 서버 저장소(remote) 의 버젼을 본인의 로컬 저장소로 불러 오는것
  • push: 로컬 저장소에서 서버 저장소로 커밋된 버젼을 등록
  • merge: 1. 서버 저장소에서 받아온 버젼을 본인 로컬 저장소의 commit된 내용들과 비교하여 합치거나, 2. branch 로 새로 생성한 작업을 본인의 서버 저장소의 master(또는 main) branch와 병합하거나, 3. 본인의 브랜치를 처음에 fork 했던 마스터 브랜치에 병합하는 일
  • merge request: 본인의 repository가 아닌 master 등의 repository에 병합하기를 요청하는 것

기본 workflow:

  1. 프로젝트 리더가 마스터 리포지토리를 생성(마스터 브랜치 생성)
  2. 각 팀원은 fork하여 본인 리포지토리를 생성하여 clone
  3. 나의 main branch에서 할 작업마다 branch를 생성 (git checkout -b [branch name])
  4. branch 의 remote 주소를 등록 (git remote add 본인 main 브랜치 주소 및 upstream 으로 마스터 리포지토리 주소를 등록)
  5. 작업이 끝나면 파일들을 stage (git add .)
  6. 작업 내용을 기술하여 커밋 (git commit -m '메시지') *feat, fix 등의 커밋 메시지 컨벤션을 따르기
  7. pull upstream master 를 통하여 그사이에 바뀐 프로젝트 마스터 브랜치 버젼을 확인
  8. 본인의 로컬에서 현재 내 버젼과 마스터의 버젼을 비교하며 merge
  9. 다시 commit
  10. git push origin 으로 내 원격 저장소의 main 브랜치에 등록
  11. github 홈페이지에서 pull & merge request(PR) 를 눌러 리더의 마스터 브랜치에 병합을 요청
  12. 리더와 팀원들과 함께 merge 수행
  13. 새로 등록된 이슈 확인 또는 직접 이슈 등록
  14. git checkout master(또는 main, 자신의 주 브랜치)로 이동 후 git pull upstream 을 통해 마스터 리포지토리의 최신버전을 내려받기
  15. 3번 부터 다시 수행
profile
A journey in frontend world

0개의 댓글