GitHub으로 코드 리뷰를 하는 몇가지 사소한 팁 공유합니다 :)
대부분 리뷰의 대상이 될 해당 코드 부분에 마우스를 hover하여, 왼쪽에 뜨는 + 버튼을 눌러 리뷰를 작성하고는 하는데요
그렇게 리뷰를 작성하고 나면 위와 같이 해당 코드의 윗부분 일부와 리뷰가 보이게 됩니다. 이처럼 짧은 로직은 다 보이게 되지만 긴 로직에 대해 설명을 부탁하거나, 그에 대한 피드백을 작성할 때 의도를 나타내기엔 충분하지 않습니다. 리뷰하고 싶은 부분의 코드가 길 경우 그 중 일부만 잘려서 보이기 때문입니다.
그럴 때에는 + 버튼을 누르고 드래그를 하면 원하는 코드 부분을 길게 선택할 수 있습니다.
이렇게 선택을 하면 리뷰를 남기고자 하는 코드 길이에 상관 없이 리뷰를 남길 수 있습니다.
이건 다양한 마크다운 에디터에서 사용할 수 있는 공통적인 방법입니다. (심지어 디스코드에서도 됨!)
```
로 코드를 감싸면 코드 블럭이 되는건 많은 분들이 알고 사용하고 있는데, 단순히 코드 블럭으로 감싸면 코드가 아닌 텍스트 처럼 표기가 됩니다.
```
@GetMapping("/videos")
public ResponseEntity<List<VideoListResponse>> getVideoRandomList() {
return new ResponseEntity<>(videoService.getRandomVideos(RANDOM_VIDEO_ACCESS_SIZE), HttpStatus.OK);
}
```
URL을 다른 것으로 변경하면 어떨까요?
이런 코드 블럭에 언어를 적어주면, 코드 블럭에 적힌 언어가 어떤 언어인지 에디터가 알 수 있게 됩니다. 그 덕분에 코드에 색깔이 입혀지고 더욱 이쁘게읽기 쉽게 하이라이팅 된 채로 보여줄 수 있습니다.
```java <---- 여기에 해당 언어를 작성하면 된다.
@GetMapping("/videos")
public ResponseEntity<List<VideoListResponse>> getVideoRandomList() {
return new ResponseEntity<>(videoService.getRandomVideos(RANDOM_VIDEO_ACCESS_SIZE), HttpStatus.OK);
}
```
URL을 다른 것으로 변경하면 어떨까요?
이렇게 작성하면
이렇게 보여집니다.
앞서 말한 팁 두개를 응용하면 코드 리뷰 단계에서 해당 코드를 어떻게 바꾸면 좋을 지 제안을 할 수 있습니다. 코드 수정을 원하는 부분을 드래그 해서 리뷰를 시작하고 수정을 원하는 코드를 작성합니다.
대신, 그 단계에서 앞서 언어를 작성하는 부분(```
바로 뒤!)에 suggestion
이라고 작성하면 해당 코드를 이렇게 수정하라는 제안을 할 수 있습니다.
이렇게 작성하면
이렇게 보여집니다. 제안을 하면 해당 코드 부분이 어떻게 수정될 건지 diff가 보여지고, 리뷰이는 간단히 버튼을 눌러 해당 제안으로 코드를 변경하는 커밋을 날릴 수 있습니다.
PR을 머지하기 전에 무조건 누군가의 Approve가 있어야만 Merge 할 수 있도록 팀원끼리 규칙을 두는 것도 좋습니다.
Repository에서 Settings → Branches → Brach protection rules → Add rule로 들어가면 Branch 룰을 정의할 수 있습니다. 룰을 적용할 수 있는 브랜치 이름은 * 같은 wildcard를 사용할 수 있는데, 자세한 내용은 문서를 참고해주세요!
모든 브랜치에 적용 시키려면 *
로 이름 지으면 됩니다.
적용할만한 Branch Rule
좋은 팁 감사합니다 :)