2015-07-28 26 views
5

Tôi có một tệp trong kho lưu trữ của mình mà tôi muốn sử dụng git đổ lỗi, nhưng tôi không chắc đường dẫn của nó là gì.Git đổ lỗi với ký tự đại diện

tôi đã quản lý để sử dụng git log như thế này:

git log -- '**/somefile' 

Nhưng tôi dường như không thể làm tương tự với git đổ lỗi. Có thể không?

Nếu có liên quan, tôi đang sử dụng mysysgit (phiên bản git: 1.9.5.msysgit.1).

Trả lời

3

Bạn sẽ phải tìm các tập tin đầu tiên:

git ls-files -- '**/somefile' 

Sau đó sử dụng git blame trên đường dẫn trả lại.

+0

'git ls-files -' **/somefile '| xargs git blame' Nên là giải pháp tốt nhất. –

+0

'git blame' không chấp nhận nhiều tệp, nếu bạn đang sử dụng nó với' xargs', bạn cần phải nói nó chỉ cần truyền một tệp tại một thời điểm: ' git ls-files - '**/somefile' | xargs -n1 git đổ lỗi' –

0

này làm việc tốt cho tôi trong Bash trên OS X:

git blame -- **/foo.json 

tôi phải rời khỏi dấu ngoặc kép cho nó hoạt động ...

+0

Đó là mở rộng vỏ, không liên quan đến git. – Hasturkun

+0

Không hiệu quả với tôi. Tôi gặp lỗi: "gây tử vong: không có đường dẫn như vậy '**/somefile' trong HEAD –

+0

Có thể bạn chưa bật tính năng này, bạn có thể kiểm tra bằng' shopt globstar' –

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