NordVPN
SponsoredStrict no-logs VPN with 6,400+ servers in 111 countries. Threat Protection blocks ads, trackers, and malware while you work online.
Get NordVPN →Dán phiên bản gốc và phiên bản sửa để xem diff theo dòng. Hữu ích cho tài liệu, file cấu hình, code review và chỉnh sửa văn bản.
| 1 | 1 | The quick brown fox | |
| 2 | − | jumps over the lazy dog | |
| 2 | + | leaps over the lazy dog | |
| 3 | 3 | and runs away. |
Chúng tôi dùng thuật toán Longest Common Subsequence (LCS) để tìm các dòng chung giữa hai phiên bản. Dòng xuất hiện trong cả hai là 'không đổi'. Dòng chỉ có trong bản gốc là 'đã xóa'. Dòng chỉ có trong bản sửa là 'đã thêm'. Kết quả là bảng so sánh có chú thích rõ ràng với số dòng được giữ nguyên ở cả hai phía.
LCS là phương pháp tiêu chuẩn được git và hầu hết công cụ diff sử dụng. Nó chọn chuỗi khớp dài nhất có thể, thường khớp với những gì con người gọi là 'cùng đoạn văn'. Với đầu vào rất lớn (10.000+ dòng) thời gian chạy tăng bậc hai; nếu cần so sánh log lớn, hãy dùng công cụ diff streaming.
Sửa đổi tài liệu: xem chính xác những gì đã thay đổi giữa các bản nháp. Hữu ích cho hợp đồng pháp lý, điều khoản dịch vụ và bất kỳ văn bản nào mà câu hỏi 'đã thay đổi gì?' là quan trọng.
File cấu hình: so sánh hai file .env hoặc YAML để phát hiện cấu hình sai. Hoặc hai phiên bản script deploy.
Chỉnh sửa văn xuôi: người viết có thể xem các sửa đổi của biên tập viên trong ngữ cảnh, đặc biệt khi chỉ một vài dòng thay đổi.
Code review (dùng nhẹ): cho các đoạn code nhỏ. Với code review thực sự, hãy dùng công cụ hiểu cú pháp — git diff với semantic flags hoặc công cụ review chuyên dụng sẽ cho kết quả tốt hơn.
Chúng tôi diff ở mức độ chi tiết dòng. Nếu bạn đổi 'mèo' thành 'con mèo' trong một dòng, toàn bộ dòng hiển thị là đã xóa và thêm; chúng tôi không tô sáng từ được chèn vào. Diff cấp độ từ và ký tự hữu ích cho việc đó, nhưng khó đọc hơn với dòng dài.
Khoảng trắng cuối dòng có ý nghĩa — 'foo' và 'foo ' (có khoảng trắng cuối) được coi là dòng khác nhau. Nếu muốn so sánh không phân biệt khoảng trắng, hãy chuẩn hóa văn bản trước khi dán.
Thứ tự quan trọng. Hai đoạn ở các vị trí khác nhau đều được tính là đã xóa và thêm. Diff không cố phát hiện các khối 'đã di chuyển'.
Chưa — chỉ cấp độ dòng. Chúng tôi có thể thêm độ chi tiết ký tự hoặc từ sau cho các so sánh ngắn.
Thực tế đến vài nghìn dòng mỗi phía. Độ phức tạp bậc hai có nghĩa đầu vào rất lớn có thể làm đóng băng tab trình duyệt một lúc.
Không. Tính toán diff chạy hoàn toàn cục bộ.
Có. Hai dòng chỉ khác nhau bởi khoảng trắng cuối được tính là khác nhau. Chuẩn hóa khoảng trắng trước khi dán nếu muốn so sánh không phân biệt khoảng trắng.
Không phải dạng file đã lưu. Sao chép-dán văn bản đã render hoặc chụp màn hình hiện tại.
Về mặt khái niệm có — chúng tôi dùng LCS, một trong các tùy chọn của git. Git mặc định dùng thuật toán tương tự nhưng tinh vi hơn (Myers diff với Patience là tùy chọn). Kết quả cho đầu vào ngắn về cơ bản giống nhau.
Vì chúng tôi làm việc ở mức độ dòng. Diff cấp độ ký tự sẽ tô sáng từ đã thay đổi, nhưng khó đọc hơn với dòng dài.
Không trong công cụ này. Với merge nhiều chiều, hãy dùng công cụ diff 3 chiều chuyên dụng.
Strict no-logs VPN with 6,400+ servers in 111 countries. Threat Protection blocks ads, trackers, and malware while you work online.
Get NordVPN →Managed cloud hosting for WordPress and web apps on DigitalOcean, Vultr, and AWS. Fast setup, no server headaches.
Try Cloudways →Hire freelancers for design, writing, dev, and marketing — or sell your own services. Millions of gigs at every budget.
Browse Fiverr →