드디어 Code Review
를 할 차례입니다!
위에서 말씀드렸다시피, 코드 리뷰는 정말 중요한 과정입니다.
코드 리뷰를 통해 운영 중에 발생해서는 안 될 큰 버그를 막을 수도 있으며,
계속해서 보고 있던 자신의 코드이기 때문에 감각이 흐려져 미처 발견하지 못한 작은 실수들을 찾아낼 수도 있습니다.
때문에 정말로 중요한 작업이라고 이해하시면 됩니다.
그럼 이제 실전으로 들어가보겠습니다.
PR
이 올라오면 여러 탭들 중에 Files changed
라는 탭이 존재하는 것을 확인할 수 있습니다.
Files changed
를 클릭하면 이렇게 어떤 내용들이 추가되고 삭제되었는지 확인할 수 있습니다.
예제에는 추가만 존재했기에, 아쉽게도 삭제에 대한 내역은 확인할 수 없네요😭
Files changed
탭에선 추가된 기록은녹색
, 삭제된 기록은빨간색
으로 관리됩니다.
리뷰를 진행하려면 어떤 코드에 대해 리뷰할 지 선택해야합니다.
좌측의 +버튼
에 마우스를 올리면 이렇게 아이콘이 커지는 것을 확인할 수 있는데요!
Single Line
에 대한 리뷰는 +버튼
클릭만으로 가능하며
Multi Line
에 대한 리뷰는 +버튼
클릭 후 드래그
를 통해 가능합니다.
혹시 눈치 채신 분들 계셨을까요?
저는 아까 일부로 코드 리뷰 예제를 위해 Hello, World
가 아닌 Hello, Wolld
로 출력되도록 작성하였습니다.
지금은 예제지만 실제로 협업을 하다보면 이런 작은 에러들이 종종 발견되곤 하는데요!
그렇기 때문에 코드 리뷰는 굉장히 중요한 작업이라고 할 수 있습니다.
물론
Test 코드
를 작성해서 사전에 이러한 버그를 막아야합니다.
리뷰를 남긴 후엔 Start a review
를 클릭하면 리뷰 남기기가 시작됩니다.
Add single comment
는 단 하나만의 리뷰를 남기기 위해 사용됩니다. Start a review
와의 차이를 자세히 알고 싶다면 직접 학습해보면 좋을 것 같습니다!
리뷰를 남기면 끝이 아닙니다.
Start a review
를 통해 리뷰를 남기게 되면, 리뷰는 Pending
상태로 남아있게 됩니다.
Pending
은 보류중 이라는 뜻으로, 아직 리뷰가 등록되지 않은 것입니다.
리뷰를 등록하려면 Finish your review
버튼을 클릭 후, 타입
을 선택해야합니다.
리뷰 타입
은 3가지가 존재하는데, 이는 다음과 같습니다.
명백한 동의는 아니고 일반적인 피드백만 남깁니다.
이는 Merge
를 승인하겠다는 뜻이 아니라 단순한 질문 또는 코드에 대한 피드백인 경우에 선택합니다.
PR
이 Merge
되는 것을 승인할 때 사용합니다.
꼭 꼼꼼한 점검 이후에 Approve
를 내주어야 합니다.
코드의 변경을 요청할 때 사용합니다.
코드가 잘못되었거나, 꼭 확인해야할 중요한 수정 사항이 발견되면 사용합니다!
애플리케이션 작동에 문제를 일으킬 수 있어 반드시 바꾸어야할 중요한 사항이 아니라면 Comment
로 리뷰를 진행해도 무방합니다.
제가 보여드리고 있는 예제는 기대하는 출력값(Hello, World)과 다른 값(Hello, Wolld)이 출력되고 있기 때문에,
Request changes
를 달아야할 부분이지만, PR을 올린 본인은 Request Changes 요청이 불가능하기 때문에 Comment
로 Submit review
를 하겠습니다.
이제 누군가(ㅋㅋ)가 리뷰한 내용을 발견한 개발자는 오류를 수정합니다.
커밋 메세지
에이슈번호
를 남기는 것도 잊지 마세요!
PR
페이지에 문제에 대한 해결 커밋 기록이 보이며, 리뷰어는 또 다시 Files changed
탭에서 이번엔 정상적으로 기능을 구현하였는 지 확인합니다.
이때 만약 리뷰에 대해 해결이 완료되면 Resolve conversation
을 클릭하여 대화 상자를 닫아둡니다.
🤔 리뷰 내역을 한 눈에 볼 수 있는데 왜 닫아두나요?
이유는 바로
가독성
입니다. 지금은 단편적인 예시이기 때문에 하나의 Review만이 존재하지만,
실제로 프로젝트를 진행하면 정말 많은 리뷰를 주고 받습니다.때문에 많은 리뷰들의
Conversation 기록
이 열려있으면필요한 리뷰
기록을 찾을 때, 큰 방해 요소가 될 수 있기에 대체적으로 닫아주는 편입니다.
자 이제 해결이 끝났으니 정말 Merge
하러 가볼까요?
이번 시간에는
코드 리뷰(Code Review)
에 대해 알아보는 시간을 가졌습니다.
이제 정말로 기능을합병(Merge)
할 수 있게 되었는데요!다음 시간엔
합병(Merge)
에 대해 알아보겠습니다.
이해가 잘 되네용!! 잘 보구 갑니다 ~!