멋쟁이사자처럼 at 인하대
Github로 협업하기
8기 운영진 이대현
내 코드 저장, 보관용
공동 프로젝트 관리 + 상호학습 촉진
Issue, Pull Request, Wiki 사용법을 배워두자!
함께 더 나은 코드를 만들 수 있다
버그 방지, 가독성 및 코드효율 향상
자유롭게 질문하고 배운 것을 공유한다
동료의 코드 = 훌륭한 학습자료
✅ 꼼꼼한 코드리뷰를 받을 수 있어서 내 코드가 개선됨
✅ 나보다 잘하는 동료의 코드를 보면서 많이 배움
✅ 막혔을 때 같이 고민해주는 이가 있음
✅ 심지어 해결책도 들고 나타나줌
✅ 무엇보다 혼자하는 것보다 훨씬 재밌음 !
organization을 만든다
team을 만들고, people 탭에서 멤버로 초대한다.
프로젝트 repository 를 만든다.
repository contributor로 팀원들을 초대하고 권한을 준다.
개인 프로필에 팀 표시됨
이슈 등록
이슈 작업
PR 작성
코드리뷰+승인
PR 반영
작업할 branch 생성, 코드 작성 + push
승인된 코드를 master에 merge
이슈 등록
"DB에 새 모델을 추가해야할 것 같아요"
"NavBar가 반응형으로 동작하질 않네요 ㅜㅜ 수정이 필요합니다"
issue 탭
issue 등록버튼
issue 별로 라벨 지정
이슈 등록
이슈 작업
1) 작업할 branch 생성
git checkout -b <새 브랜치이름>
branch는 기능/이름 으로 파기!
항상 모든 작업은 브랜치를 파서 한다. 마스터 브랜치에 직접 push 금지.
이슈 등록
이슈 작업
2) 코드 작성 + add, commit, push
해당 브랜치 내에서 수정작업을 완료했으면, 브랜치에 수정사항을 push한다.
❌주의❌
내가 작성한 코드가 다른 팀원의 리뷰없이 master 브랜치로 push 되면 안되기 때문에, 우선 자기 branch에 push하고 리뷰를 기다린다!
git push -u origin <해당 브랜치명>
❌주의2❌
push 하기 전 항상 master 브랜치를 pull 받아 최신 브랜치로 업데이트 하기!
git pull origin master
이슈 등록
이슈 작업
PR 작성
navBar/daehyun 브랜치에 push 한 후
github 저장소 Pull requests 탭에 들어가보면 create pull request 라는 초록 버튼이 활성화 되어있다.
이슈 등록
이슈 작업
PR 작성
PR 내용은 최대한 상세하게, PR 단위는 최대한 작게
Reviewers, Assignees, Labels 도 잘 설정해주자!
이슈 등록
이슈 작업
PR 작성
코드 리뷰 + 승인
1. 해당 브랜치로 이동해서, 혹은 내 브랜치에 pull 받아서 확인한다.
2. 리뷰를 요청받은 PR에 들어가서
Add your review을 클릭한다.
3. 코멘트를 적은 뒤 approve(승인)한다.
코드 리뷰 방법
git checkout navBar/daehyun 혹은
git pull origin navBar/daehyun (내 브랜치로 병합)
이슈 등록
이슈 작업
PR 작성
코드 리뷰 + 승인
“이 부분을 따로 빼서 함수로 만드는건 어떨까요?”
“navBar가 정상적으로 동작하네요! 수고하셨습니다”
✅ 리뷰어는 PR에 대해 3가지 의사표현을 할 수 있다.
Comment : 그냥 코멘트만 달아줌.
Request changes : 코드에서 버그를 발견하면 다시 수정해달라고 요청할 수 있음.
Approve : 이 코드가 merge 되는 것에 동의함.
이슈 등록
이슈 작업
PR 작성
코드 리뷰 + 승인
PR 반영
최소 2명(팀마다 정하기 나름)의 리뷰를 받아야 master에 merge 가능
코드리뷰
받기 전
코드리뷰
받은 후
merge 가능. 클릭!
이슈 등록
이슈 작업
PR 작성
코드 리뷰 + 승인
PR 반영
master 브랜치에 바로 push 못하게 설정하는 방법 (깃허브)
settings -> branches -> add rule 클릭
- Branch name pattern 에 master 입력
- Require pull request reviews before merging 2명으로 체크
기능별로 브랜치를 파서 작업하면 웬만하면 충돌이 나지 않지만, 가끔 동료의 브랜치를 pull 받거나 마스터에 merge 할 때 충돌이 생길 수 있음.
충돌이 나더라도 코드는 살아있으니 걱정할 필요 없음.
vscode가 충돌 난, 서로 다른 코드 두 가지를 모두 보여주면서
둘 중에 하나 선택하라고 함. 적절히 수동으로 수정하면 됨.
- Edit 버튼을 눌러, 마크다운 문법으로 작성
- 링크를 넣고싶다면 New Page 적절히 활용