0원으로 현업 환경을 설정해보자! Github Pull Request(코드리뷰)
이 포스팅은 "실제 현업의 환경을 설정해보자!"의 Series 중 일부입니다.
2 0원으로 현업환경을 설정해보자! Sourcetree
3. 0원으로 현업환경을 설정해보자! Beyond Compare
4. 0원으로 현업환경을 설정해보자! Git Flow(Sourcetree)
5. 0원으로 현업 환경을 설정해보자! Github Pull Request(코드 리뷰)
6. 0원으로 현업환경을 설정해보자! [번외편] 히스토리 꾸미기
들어가기 앞서
구글 코드리뷰 가이드 한글은 여기를 참조해주세요.
구글 코드리뷰 가이드를 한글로 번역해주신 Soojin Ro 님께 감사드립니다.
리뷰어 (Reviewer): 코드를 검토하는 대상자입니다.
리뷰이(Reviewee): 검토 대상자입니다.
살아가면서 현실과 이상은 다르듯이 구글 코드리뷰 가이드을 무조건 따르는 것보다는
현재 환경에 맞도록 적용하는 것이 중요하다고 생각합니다.
이슈와 풀 리퀘스트의 자세한 내용은 Github Collaborating with issues and pull requests 를 참조해주세요.
리뷰이 (Reviewee)
리뷰이는 작성한 소스를 Github 에 제출합니다.
Fork
Github Repo 우측에 보시면 Fork 버튼이 있습니다.
Fork 클릭하시면 어느 곳에 Repo를 배치할지를 정할 수 있습니다.
풀 리퀘스트 요청
풀 리퀘스트 작성하는 방법은 2가지가 있습니다.
1. 소스트리를 통해서 "풀 리퀘스트 작성" 기능을 통해서 풀 리퀘스트를 작성할 수 있습니다.
소스트리를 이용할 경우 Remote 브랜치에 Push 까지 되니 주의해서 사용해주세요.
2. Github Page 에서 풀 리퀘스트 요청
풀 리퀘스트 작성
이제 요청할 브랜치를 비교하고 풀 리퀘스트를 작성합니다.
만약 풀 리퀘스트 Template 를 만들고 싶으면 Creating a pull request template 를 참조해주세요.
지금은 간단한 예제만 해보도록 하죠~
Test PR 을 입력합니다.
리뷰어 (Reviewer)
리뷰이가 풀 리퀘스트를 요청하게 되면 Github 의 풀 리퀘스트 목록이 표시됩니다.
Test PR 을 클릭하면 풀 리퀘스트 상세 화면으로 이동합니다.
"Test PR" 이라는 간단한 수정사항이 있습니다.
만약 Pull Request 한 브랜치를 Checkout 하고 싶다면
실제 현업의 환경을 설정해보자! Sourcetree 편을 읽어주세요!
이제 Comment 를 달아볼까요?
AGString 오픈소스를 만들면서 달았던 Comment 입니다!
Submit Review 를 하기전에 선택할 수 있는 옵션이 있습니다.
자세한 내용은 여기를 참조해주세요.
- Comment: 명시적인 승인없이 일반적인 피드백을 제출합니다.
- Approve: 의견을 제출하고 풀 요청에서 제안 된 변경 사항을 병합합니다.
- Request changes: 제안된 변경 사항에 대한 피드백을 요약 한 설명을 입력합니다.
하지만 여기서 끝나는 것이 아닙니다.
풀 리퀘스트를 Merge 를 하기 옵션이 있습니다.
자세한 설명 여기를 참조해주세요.
각 선택적 요소에 대해 자세하게 정리되어 있는 내용은 여기를 참조해주세요.
Create a merge commit
Feature 브랜치의 모든 커밋이 병합 커밋의 기본 브랜치에 추가됩니다
Squash and merge
풀 요청의 커밋이 단일 커밋으로 스쿼시됩니다.
Rebase and merge
모든 커밋이 병합 커밋없이 개별적으로 기본 브랜치에 추가됩니다.
GitHub의 리베이스 및 병합 동작은 git rebase와 약간 다릅니다.
GitHub의 리베이스 및 병합은 항상 커미터 정보를 업데이트하고 새로운 커밋 SHA를 생성하는 반면,
GitHub 외부의 git rebase는 상위베이스 커밋 위에서 rebase가 발생할 때 커미터 정보를 변경하지 않습니다.
Github Release Asset
Github 의 Release 를 클릭하면 아래 "ddd"와 같이 Assets 과 함께 Uploaded 된 것을 본적이 있을 것 입니다.
stackoverflow 에서 관련 내용을 찾을 수 있었습니다.
Command Line 과 관련된 내용은 Github Release API 참조해 주세요.
Release Tab에서 Draft a new release 를 클릭합니다.
그러면 아래와 같이 Draft 를 입력할 수 있는 Form 이 제공됩니다.
Publish release 를 클릭하면 "ddd" 와 같이 release 가 됩니다.
참조:
https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/merging-a-pull-request
https://help.github.com/en/github/collaborating-with-issues-and-pull-requests