깃허브(GitHub) 댓글 기능, 이제 선택적으로 끄세요!
깃허브(GitHub)에서 개별 커밋에 대한 댓글 기능을 비활성화하는 기능을 출시하여 코드 리뷰(Code Review) 환경 개선을 지원
저장소 설정(Repository Settings) 내 'Commits' 섹션에서 '개별 커밋에 댓글 허용' 옵션을 통해 댓글 기능 활성화/비활성화 설정 가능
비활성화 시 댓글 작성, API 호출, 댓글 표시 기능이 차단되며, 기존 댓글은 유지되어 과거 기록 보존(Historical Record Preservation)
개별 커밋 댓글 비활성화 기능의 작동 방식
본문에 따르면, 저장소 설정에서 '개별 커밋에 댓글 허용' 옵션을 비활성화하면 다음과 같은 변화가 발생한다.
댓글 폼(Comment Form), 인라인(Inline) diff 댓글 기능, 인라인 스레드(Thread) 답글 기능이 커밋 페이지에서 숨겨짐(Hidden)
REST API(REST API) 및 GraphQL API(GraphQL API)를 통한 댓글 생성 차단(Blocked)
기존 댓글은 삭제되지 않고(Not Affected), 계속해서 확인, 수정, 삭제 가능
이러한 동작은 불필요한 댓글로 인한 코드 리뷰(Code Review) 방해를 최소화하고, 깔끔한 코드 관리(Clean Code Management)를 돕는다.
REST API 및 GraphQL API 차단
글에 따르면, 개별 커밋 댓글 비활성화 시 REST API(REST API)와 GraphQL API(GraphQL API)를 통한 댓글 생성도 차단된다.
REST API: HTTP 메서드(HTTP Method)를 이용한 댓글 생성 요청 거부
GraphQL API: 뮤테이션(Mutation)을 통한 댓글 생성 요청 거부
이러한 API 차단은 데이터 격리 아키텍처(Data Isolation Architecture)를 강화하고, 무결성(Integrity)을 유지하는 데 기여한다. 또한, API를 통한 악의적인 댓글 삽입 시도를 방지하여 보안(Security) 강화에도 도움을 준다.
기존 댓글 유지 정책의 의미
본문에서는 기존 댓글은 삭제되지 않고, 계속해서 확인, 수정, 삭제할 수 있다고 언급한다.
과거 기록 보존(Historical Record Preservation): 기존 댓글을 유지함으로써 코드 변경 이력(Code Change History)과 관련된 맥락(Context) 유지
감사 추적(Audit Trail): 댓글을 삭제하지 않음으로써 코드 변경에 대한 감사(Audit) 기능 지원
데이터 미저장 정책(Zero-Retention Policy) 미적용: 기존 댓글은 삭제되지 않으므로, 데이터 미저장 정책(Zero-Retention Policy)과는 관련 없음
이러한 정책은 코드 리뷰(Code Review)의 투명성을 높이고, 개발자 간의 협업(Collaboration) 효율성을 증대시킨다.