2009-12-30 42 views
7

Tôi hơi bối rối về Git. Khi tôi xem qua hướng dẫn, nó xuất hiện Diff được bao gồm trong sổ tay Git-log. Ngoài ra khi tôi đang xem hướng dẫn và các công cụ, tôi thấy rằng nhật ký Git thực hiện nhiều công việc giống như git-diff. Chức năng của Git-Diff chỉ là một tập con của Git-log?Git-Diff so với Git-log? Có gì khác biệt?

Cảm ơn!

Trả lời

11

git log có thể sử dụng git diff để hiển thị từng thay đổi trong lịch sử. git log là để hiển thị một tập hợp các bản sửa đổi, có khả năng bao gồm sự khác biệt giữa mỗi bản sửa đổi và phụ huynh của nó, trong khi git diff được sử dụng để hiển thị sự khác biệt giữa hai bản sửa đổi trong kho lưu trữ của bạn. git diff cũng có thể được sử dụng để hiển thị sự khác biệt giữa bản sao làm việc hiện tại và khu vực dàn dựng (còn được gọi là "chỉ mục") và sự khác biệt giữa khu vực dàn dựng và bản sửa đổi trong kho lưu trữ của bạn, thường là HEAD, trong khi git log sẽ chỉ bao giờ hiển thị mã cam kết.

Vì vậy, chúng có một chút trùng lặp, nhưng không phải là một tập hợp con của người khác. git log sử dụng git diff đối với một số hình thức hiển thị của nó và do đó có các tùy chọn tương tự để đặt cách thức gọi số git diff.

+0

câu trả lời hay hơn tôi nhiều. –

+0

Tuyệt vời! Câu trả lời chính xác! Cảm ơn rất nhiều. – Matt

+1

cho người theo dõi, git log -p có thể hiển thị "diff like output" FWIW – rogerdpack

Các vấn đề liên quan