2011-05-25 26 views
33

Một đồng nghiệp của tôi đã kiểm tra một số thay đổi đối với Git và tôi muốn xem chính xác những thay đổi đó là gì. Nói cách khác, sự khác biệt giữa việc đăng ký của anh ta và cha mẹ của nó.Git - cách dễ nhất để thấy khác biệt với phiên bản trước nếu tôi có sha

gì có vẻ logic với tôi là để chạy lệnh này:

git diff shaOfHisCheckIn 

Nhưng điều này đã không làm việc. Nó xuất hiện để hiển thị sự khác biệt giữa SHA và bản sao làm việc hiện tại của tôi.

Lệnh đúng để hiển thị sự khác biệt giữa SHA và cha mẹ của nó là gì?

Trả lời

54

git show là bạn của bạn:

git show shaOfHisCheckIn 
+0

Cảm ơn, đó chính xác là những gì tôi cần, và thật dễ dàng để nhớ và để gõ. –

+0

Bạn được chào đón! Nó hoạt động cho các thẻ quá theo cách ('git show ') - đó là một lệnh thực sự hữu ích. –

1

git diff shaOfHisCheckIn shaOfHisCheckIn^

4

Hãy thử điều này:

git diff shaOfHisCheckIn^ shaOfHisCheckIn 

hoặc

git diff shaOfHisCheckIn{^,} 
6

Nếu bạn muốn xem các di ff trực quan trong kdiff3, meld, kompare, xxdiff, tkdiff, diffuse ...

git difftool --dir-diff shaOfHisCheckIn^! 

git difftool --tool=meld --dir-diff shaOfHisCheckIn^! 

git difftool -t meld -d shaOfHisCheckIn^! 
Các vấn đề liên quan