GitHub PR에서 공백을 숨겼더니 변경이 줄어 보이는 이유

개발
조회 7

동료가 올린 PR을 열었는데 화면 대부분이 들여쓰기 변경으로 가득한 적 있나요? 함수 한 줄을 고쳤을 뿐인데 포매터가 파일 전체를 정리하면, 정작 봐야 할 변화가 빨간색과 초록색 사이에 묻혀요. GitHub가 10월 22일 발표한 공백 표시 설정 저장 기능은 이런 리뷰의 번거로움을 줄여 주는 변화예요.

한 번 고른 보기 방식이 다음 PR에도 이어져요

Files changed의 Settings → Whitespace changes에서 Always show, Always hide, Hide for this diff only를 고를 수 있어요. 저장한 설정은 개인에게 적용되고 여러 PR에 이어져요. 공백을 숨기면 All commits 옆에 Hide whitespace 필터가 나타나며, X를 누르면 저장한 설정을 바꾸지 않고 잠시 공백을 다시 볼 수 있어요.

작지만 반가운 부분은 이 선택을 매번 반복하지 않아도 된다는 점이에요. 다만 화면에 보이는 파일 수와 diff 통계도 현재 표시된 diff를 반영해요. 어제 본 숫자보다 작아졌다고 해서 작성자가 그만큼 코드를 되돌렸다고 해석하면 헷갈릴 수 있어요. 먼저 필터가 켜져 있는지 보면 맥락이 맞아떨어져요.

들여쓰기 뒤에 숨어 있던 한 줄 찾기

차이를 눈으로 보기 위해 짧은 JavaScript 예제를 직접 만들었어요. 이전 코드는 세금 포함 가격을 계산해 반환하고, 바뀐 코드는 같은 계산 결과를 소수 둘째 자리로 반올림해요. 동시에 두 칸 들여쓰기를 네 칸으로 바꿨어요. 아래 이미지는 이 예제를 로컬 git diff로 비교한 실제 출력이며 GitHub 제품 화면은 아니에요.

일반 diff에서는 계산식과 반환문이 함께 바뀐 덩어리로 보여요. git diff -w에서는 들여쓰기만 달라진 계산식이 문맥으로 남고 반환문의 변화가 더 또렷해져요. 리뷰어는 반올림이 필요한 이유, 음수나 큰 값의 처리, 기존 테스트가 기대하는 금액 같은 질문에 집중할 수 있어요. 공백을 숨기는 기능의 가치는 이런 읽기 순서에 있어요.

직접 만든 금액 계산 예제의 실제 git diff 출력이에요. 위는 기본 비교, 아래는 -w 비교이며 반올림 변경은 둘 다 남아요.
직접 만든 금액 계산 예제의 실제 git diff 출력이에요. 위는 기본 비교, 아래는 -w 비교이며 반올림 변경은 둘 다 남아요.

공백이 동작을 바꾸는 코드도 있어요

그래서 숨긴 보기를 모든 파일의 최종 판단으로 쓰기는 어려워요. Python의 들여쓰기, YAML의 계층, 문자열 안의 공백은 의미를 만들 수 있어요. 예를 들어 인사말이 "Hello world"에서 "Helloworld"로 바뀌면 문자 사이 공백 하나가 사용자에게 보이는 결과를 바꿔요. -w는 Git의 공백 무시 비교 옵션이며 언어의 의미를 판정하는 도구가 아니에요.

이 예제에서는 -w가 문자열 안의 공백 변경까지 감춰서 diff 출력이 비게 돼요. 실제로 실행해 확인한 결과를 두 번째 이미지에 담았어요. GitHub와 로컬 Git의 모든 비교 동작이 같다고 가정할 필요는 없어요. 보여 주는 방식이 단순해질수록, 공백이 의미를 가진 부분에서는 원래 변경 내용을 한 번 다시 펼쳐 보는 습관이 도움이 돼요.

직접 실행한 문자열 예제예요. 공백을 없앤 결과가 달라져도 -w 비교 출력은 비어 있을 수 있어요.
직접 실행한 문자열 예제예요. 공백을 없앤 결과가 달라져도 -w 비교 출력은 비어 있을 수 있어요.

새 파일의 긴 줄도 조금 편해져요

이번 발표에는 split view에서 새 파일과 삭제된 파일을 두 열 전체 너비로 보여 주는 개선도 들어 있어요. 추가 파일이 한쪽 절반에만 갇히지 않으니 긴 타입 정의나 테스트 설명의 줄바꿈을 덜 따라가도 되겠어요. 새 파일에 비교할 이전 내용이 없다는 점을 화면 배치에 반영한 변화로 볼 수 있어요.

포매팅과 기능 변경이 섞인 PR이라면 숨긴 보기에서 핵심 계산을 먼저 읽고, 공백을 다시 표시해 문자열과 구조를 살펴보는 식으로 활용해 보세요. 작성자가 포매팅 커밋을 분리하면 의도도 더 잘 전달돼요. 새 설정이 줄여 주는 건 클릭과 시각적 잡음이에요. 변경의 의미를 읽는 마지막 단계까지 없어지는 건 아니에요.

더 읽을 공식 자료

GitHub Changelog · 2026-10-22

Git · git-diff

GitHub Docs · Reviewing proposed changes

2026년 10월 23일 공식 발표와 Git 문서를 확인하고, 예제의 두 비교 출력을 직접 실행했어요.