Super Kawaii Cute Cat Kaoani Forking Workflow 정리

기타/git

Forking Workflow 정리

치킨고양이짱아 2024. 8. 1. 18:22
728x90
728x90

연구실 홈페이지 관리자가 되었는데,,,git에 익숙하지 않아 업데이트 할 때마다 찾아보려니 너무 귀찮아서ㅎㅎ

내가 보려고 정리하는 글...

CASE1) 내가 업데이트하고자 할 때

1. 공식 저장소의 update를 fork로 생성한 본인 계정의 저장소에 반영하기

$ git pull upstream master

2. branch 생성

# develop 이라는 이름의 branch를 생성한다.
$ git checkout -b develop
Switched to a new branch 'develop'

# 이제 2개의 브랜치가 존재한다.
$ git branch
* develop
  master

3. 수정 작업 후 add, commit, push

  • 주의사항 push 진행시에 branch 이름을 명시해주어야 한다
# develop 브랜치의 수정 내역을 origin 으로 푸시한다.
$ git push origin develop

4. pull request 생성

  • push 완료 후 본인 계정의 github 저장소에 들어오면 Compare & pull reqeust 버튼이 활성화 되어 있다.
  • 해당 버튼을 선택하여 메시지를 작성하고 PR을 생성한다.

 

 

5. 코드리뷰, Merge Pull Reqest

  • PR을 받은 원본 저장소 관리자는 코드 변경내역을 확인하고 Merge 여부를 결정한다.

6. Merge 이후 동기화 및 branch 삭제

$ git pull upstream master
$ git branch -d develop(브랜치 별명)

 

CASE2) 다른 사람이 업데이트한 내용을 검토할 때

1. 해당 내용을 확인하기 위해 pull 받기

  • 해당 PR 페이지에서 view command line instructions을 클릭하면 위 명령어를 확인할 수 있다.
  • 이렇게 하는 경우, PR merge가 완료된 후에 'git branch -d (id2)-feature-a' 명령으로 PR 확인을 위해 만든 branch를 삭제하면 된다.
$ git checkout -b (id2)-feature-a master # master로부터 새로운 branch (id2)-feature-a 생성
$ git pull https://github.com/(id2)/ForkingTest feature-a # #id2가 branch feature-a에서 작업한 내용을 pull

2. comment 및 review

  • PR의 내용을 검토한 후, 의견을 아래 두 가지 탭에서 올릴 수 있다.
    • Conversation 탭: 일반적인 comment 혹은 질문 등
    • File changed 탭: 라인 별 comment 혹은 코드 리뷰
  • id1이 해당 PR의 File changed tab에서 fileA.txt의 변경 내용의 첫 번째 줄에 나타나는 '+' 표시를 누르고 comment를 입력한 후 'Start areview'를 누르기(comment 예: 'fileA를 고치고 문서도 업데이트 하라')
  • 다른 파일에 대해 다른 언급할 내용이 없으면 'Finish your review'을 누른 후, 'Request changes'를 선택해 'Submit review'를 누르기

Jekyll로 변경내용 확인하기

$ bundle exec jekyll serve
728x90
728x90