So sánh văn bản và tệp

So sánh hai văn bản hoặc tệp, tô sáng thay đổi và sao chép unified diff.

Khác biệt

Nhập hai văn bản để xem điều gì đã thay đổi.

Công cụ này làm gì

Dán văn bản gốc vào bên trái và bản đã sửa vào bên phải, công cụ cho thấy chính xác điều gì khác: dòng nào được thêm, dòng nào bị xóa, và trong một dòng bị sửa thì những từ nào đã đổi. Bạn đọc kết quả theo hai cột hoặc một danh sách, có thể bỏ qua khác biệt về khoảng trắng hoặc chữ hoa, và sao chép toàn bộ so sánh dưới dạng unified diff, định dạng mà hệ thống quản lý phiên bản và lệnh patch sử dụng.

Công cụ dành cho những việc thường ngày: hai phiên bản của một điều khoản hợp đồng, bài viết đã chỉnh sửa, tệp cấu hình trước và sau khi đổi, tệp dịch, một đoạn mã. Cả hai văn bản ở lại trong trình duyệt, điều quan trọng khi chúng chứa tài liệu riêng tư hay thông tin đăng nhập.

Cách dùng

  1. Đặt văn bản gốc vào ô bên trái và văn bản đã sửa vào ô bên phải. Bạn cũng có thể thả tệp văn bản vào ô hoặc dùng nút "Mở tệp".
  2. Đọc dòng tóm tắt: số dòng thêm, xóa và giữ nguyên. Nếu giống hệt nhau, công cụ cho biết.
  3. Chuyển giữa "Hai cột" và "Một cột". Dòng thêm màu xanh, dòng xóa màu đỏ, và các từ thay đổi trong một dòng được tô đậm hơn.
  4. Bật "Bỏ qua khoảng trắng" để bỏ qua khác biệt về dấu cách và thụt lề, hoặc "Bỏ qua chữ hoa và chữ thường".
  5. Nhấn "Sao chép unified diff" để sao chép thay đổi, hoặc tải về dạng tệp .diff.

Những đoạn dài không đổi được gấp lại thành một nút, nên bạn thấy các thay đổi cùng ba dòng ngữ cảnh xung quanh.

Cách so sánh hoạt động

Công cụ so sánh theo từng dòng bằng thuật toán Myers, phương pháp đứng sau chương trình diff kinh điển: tìm tập dòng thêm và xóa nhỏ nhất biến văn bản thứ nhất thành văn bản thứ hai. Khi một dòng bị xóa và một dòng được thêm nằm cùng chỗ, chúng được so lại theo từng từ, nên đổi từ price * 2 thành price * 3 chỉ tô sáng số 2 và số 3. Nếu hai dòng có quá ít điểm chung, chúng hiển thị là khác hoàn toàn thay vì một mớ tô sáng rối mắt.

Kiểu xuống dòng không được tính là khác biệt: tệp xuống dòng kiểu Windows và tệp xuống dòng kiểu Unix coi là bằng nhau nếu chữ giống nhau. Thiếu dấu xuống dòng ở cuối văn bản cũng không được tính, nên "delta" và "delta" kèm dấu xuống dòng được coi là cùng một dòng.

Lỗi thường gặp

  • So sánh ngược. Dòng thêm và xóa đổi chỗ nếu bạn đặt bản mới ở bên trái. Hãy dùng "Đổi hai bên".
  • Định dạng lại che mất thay đổi thật. Nếu ai đó thụt lề lại cả tệp, hãy bật "Bỏ qua khoảng trắng".
  • Khác biệt vô hình. Hai dòng trông giống nhau có thể khác ở một dấu cách thừa, một tab hay một loại dấu ngoặc kép. Phần tô sáng sẽ chỉ ra.
  • Dán từ tài liệu có định dạng. Phần mềm soạn thảo thay dấu nháy thẳng và thêm dấu cách; hãy so sánh văn bản thuần.

Giới hạn

Mỗi bên chứa tối đa 5 triệu ký tự, tệp mở vào tối đa 5 MB. So sánh lớn chạy trong luồng nền để trang không bị đơ. Nếu hai văn bản khác nhau ở hàng nghìn chỗ, công cụ không thể so khớp chính xác từng dòng; nó sẽ báo và hiển thị phần không khớp là đã thay thế.

Câu hỏi thường gặp

Văn bản hoặc tệp của tôi có bị tải lên không?

Không. Việc so sánh chạy trong trình duyệt. Tệp bạn mở được đọc trên thiết bị và không gửi đi đâu.

Unified diff là gì?

Là mô tả dạng văn bản thuần về thay đổi giữa hai tệp: một phần đầu nêu hai tên, rồi các khối bắt đầu bằng dòng như @@ -1,3 +1,4 @@ và liệt kê dòng với dấu trừ là bị xóa, dấu cộng là thêm, dấu cách là không đổi.

Vì sao có từ được tô sáng, có từ không?

Khi một dòng bị xóa và một dòng được thêm nằm cùng chỗ, chúng được so từng từ và chỉ từ thay đổi được tô sáng. Nếu có quá ít điểm chung, cả dòng được đánh dấu để dễ đọc hơn.