Vì sao PR trên GitHub trông nhỏ hơn khi ẩn khoảng trắng

Dev
Lượt xem 4

Một thay đổi nhỏ dễ chìm trong các dòng đỏ xanh khi trình định dạng cũng đổi toàn bộ thụt lề. Cập nhật GitHub ngày 22 tháng 10 giúp bớt lặp thao tác: tùy chọn khoảng trắng cá nhân có thể được lưu giữa các pull request.

Tùy chọn đi cùng PR tiếp theo

Trong Files changed → Settings → Whitespace changes có Always show, Always hide và Hide for this diff only. Tùy chọn lưu là của cá nhân và áp dụng giữa các PR. Khi ẩn khoảng trắng, Hide whitespace xuất hiện cạnh All commits; nút X hiện lại tạm thời mà không đổi tùy chọn đã lưu.

Số tệp và thống kê diff phản ánh nội dung đang hiển thị. Con số nhỏ hơn không nhất thiết nghĩa là tác giả đã bỏ thay đổi. Bộ lọc đang bật có thể giải thích vì sao hai người đọc cùng PR thấy số khác nhau.

Tìm dòng quan trọng sau định dạng

Chúng tôi viết ví dụ JavaScript tính giá có thuế. Bản mới làm tròn hai chữ số thập phân, đồng thời đổi thụt lề từ hai sang bốn dấu cách. Hình là đầu ra git diff thực sự chạy tại máy, không phải giao diện GitHub.

Diff thường hiển thị phép tính và return như các dòng bị thay cùng nhau. Với git diff -w, phép tính ở lại làm ngữ cảnh và return mới nổi bật. Nhờ đó dễ nghĩ về làm tròn, số âm và kiểm thử hiện có. Dễ đọc hơn chưa phải bằng chứng chương trình đúng.

Đầu ra thật từ ví dụ giá tự viết: diff thường ở trên, -w ở dưới. Cả hai giữ thay đổi làm tròn.
Đầu ra thật từ ví dụ giá tự viết: diff thường ở trên, -w ở dưới. Cả hai giữ thay đổi làm tròn.

Khoảng trắng có thể đổi hành vi

Thụt lề Python, cấp YAML và khoảng trắng trong chuỗi có thể mang nghĩa. Đổi "Hello world" thành "Helloworld" làm thay đổi chữ hiển thị. -w điều khiển so sánh khoảng trắng, không hiểu ngữ nghĩa ngôn ngữ.

Ví dụ chuỗi đơn giản này thực sự cho diff rỗng khi dùng -w. Hình thứ hai ghi lại kết quả. Điều đó không chứng minh GitHub luôn giống Git tại máy, nhưng cho thấy lý do cần mở lại diff đầy đủ ở nơi khoảng trắng có ý nghĩa.

Ví dụ chuỗi tự viết chạy tại máy: giá trị thay đổi dù diff -w có thể rỗng.
Ví dụ chuỗi tự viết chạy tại máy: giá trị thay đổi dù diff -w có thể rỗng.

Thêm chiều rộng cho tệp mới

Trong split view, tệp mới và tệp bị xóa nay dùng cả hai cột. Khi không có bản cũ đối diện, không gian thêm giúp giảm xuống dòng ở kiểu dữ liệu hoặc tên kiểm thử dài.

Với PR trộn định dạng và hành vi, có thể đọc logic qua bộ lọc trước rồi hiện khoảng trắng để xem chuỗi và cấu trúc. Tách commit định dạng cũng làm rõ ý định. Tùy chọn tiết kiệm cú nhấp; hiểu hành vi vẫn là trọng tâm của review.

Nguồn chính thức

GitHub Changelog · 2026-10-22

Git · git-diff

GitHub Docs · Reviewing proposed changes

Đối chiếu thông báo và tài liệu Git ngày 23 tháng 10 năm 2026; cả hai phép so sánh đều chạy tại máy.