Định dạng đầu ra tiêu chuẩn (cũ) sẽ hiển thị sự khác biệt giữa các tệp mà không có văn bản xung quanh với các khu vực nơi các tệp khác nhau.
Hiển thị sự khác biệt mà không có bối cảnh
diff
Định dạng đầu ra "bình thường" hiển thị từng khối khác biệt mà không có bất kỳ bối cảnh xung quanh. Đôi khi đầu ra như vậy là cách rõ ràng nhất để xem các dòng đã thay đổi như thế nào, mà không có sự lộn xộn của các dòng không thay đổi gần đó (mặc dù bạn có thể nhận được kết quả tương tự với bối cảnh hoặc các định dạng hợp nhất bằng cách sử dụng 0 dòng ngữ cảnh). Tuy nhiên, định dạng này không còn được sử dụng rộng rãi để gửi các bản vá; cho mục đích đó, định dạng ngữ cảnh và định dạng thống nhất là vượt trội. Định dạng thông thường là mặc định để tương thích với các phiên bản cũ hơn diff
và tiêu chuẩn POSIX. Sử dụng --normal
tùy chọn để chọn định dạng đầu ra này một cách rõ ràng.
Mô tả chi tiết về định dạng bình thường
Định dạng đầu ra bình thường bao gồm một hoặc nhiều khối khác nhau; mỗi hunk hiển thị một khu vực nơi các tập tin khác nhau. Hunk định dạng bình thường trông như thế này:
CHANGE-COMMAND
< FROM-FILE-LINE
< FROM-FILE-LINE...
---
> TO-FILE-LINE
> TO-FILE-LINE...
Có ba loại lệnh thay đổi. Mỗi dòng bao gồm một số dòng hoặc phạm vi dòng được phân tách bằng dấu phẩy trong tệp đầu tiên, một ký tự duy nhất cho biết loại thay đổi cần thực hiện và số dòng hoặc phạm vi dòng được phân tách bằng dấu phẩy trong tệp thứ hai. Tất cả các số dòng là số dòng gốc trong mỗi tệp. Các loại lệnh thay đổi là:
LaR
Thêm các dòng trong phạm vi R của tệp thứ hai sau dòng L của tệp đầu tiên. Ví dụ: 8a12,15
có nghĩa là nối các dòng 12-15 của tệp 2 sau dòng 8 của tệp 1; hoặc, nếu thay đổi tệp 2 thành tệp 1, hãy xóa các dòng 12-15 của tệp 2.
FcT
Thay thế các dòng trong phạm vi F của tệp đầu tiên bằng các dòng trong phạm vi T của tệp thứ hai. Điều này giống như một kết hợp thêm và xóa, nhưng nhỏ gọn hơn. Ví dụ: 5,7c8,10
có nghĩa là thay đổi dòng 5-7 của tệp 1 để đọc thành dòng 8-10 của tệp 2; hoặc, nếu thay đổi tệp 2 thành tệp 1, hãy thay đổi dòng 8-10 của tệp 2 để đọc thành dòng 5-7 của tệp 1.
RdL
Xóa các dòng trong phạm vi R từ tệp đầu tiên; dòng L là nơi chúng sẽ xuất hiện trong tệp thứ hai nếu chúng không bị xóa. Ví dụ: 5,7d3
có nghĩa là xóa các dòng 5-7 của tệp 1; hoặc, nếu thay đổi tệp 2 thành tệp 1, hãy nối các dòng 5-7 của tệp 1 sau dòng 3 của tệp 2.
Vì vậy, để nhìn thấy cam, bạn sẽ phải phân biệt nó cạnh nhau hoặc bằng cách sử dụng bối cảnh thống nhất.
oranges
là phần chung lớn nhất giữa hai tệp, vì vậy những gì bạn có được là cách ngắn nhất để thể hiện sự khác biệt giữa hai tệp.