Nếu bạn chỉ muốn tìm cam kết gần đây nhất, thì bạn không muốn git-log
, git-rev-list
trong đó liệt kê các đối tượng cam kết thay đổi tệp đó, trong đường dẫn cam kết đó, bắt đầu bằng lần gần nhất (theo thời gian). Chỉ cần đặt:
git rev-list -1 <commit> <filename>
Đối với git-rev-list
trường hợp của bạn, bạn chỉ cần cung cấp:
- Số lượng cam kết bao gồm, hoặc -1 chỉ cho gần đây nhất,
- Các chi nhánh (hoặc cam kết id) để bắt đầu nhìn lại từ, TRỤ nếu bạn đã có trên nó, hoặc --all nếu bạn muốn tất cả các cam kết được biết đến, và
- Đường dẫn tương đối đến tập tin của bạn.
Điều này chỉ trả về ID xác nhận gần đây nhất trong nhánh hiện tại để thay đổi tệp đó, ví dụ: 215095e2e338525be0baeeebdf66bfbb304e7270
Đối với một ví dụ phức tạp hơn, bạn có thể sử dụng tên thẻ và thậm chí các tham chiếu từ xa và bao gồm tên đường dẫn tương đối với ký tự đại diện, ví dụ:
git rev-list origin/user/bob/testbranch -1 src/bfiles/*.txt
... Điều này sẽ cho bạn biết sự thay đổi gần đây nhất đối với trận đấu ký tự đại diện trong lịch sử của chi nhánh đó. Các tùy chọn cho danh sách rev là cực kỳ, nó là một trong những lệnh hệ thống ống nước quan trọng nhất, vì vậy bạn có thể bao gồm hoặc loại trừ bằng bất kỳ tiêu chí nào bạn có thể tưởng tượng.
Tất nhiên, tham khảo trang Hướng dẫn git-rev-list (1) .
--all
tùy chọn.