2015-07-28 13 views
5

Ich habe eine Datei in meinem Repository Ich möchte git Schuld an, aber ich bin mir nicht sicher, was es ist.Git Schuld mit Wildcard

Ich habe es geschafft git log wie folgt zu verwenden:

git log -- '**/somefile' 

Aber ich kann nicht das gleiche mit git Schuld zu tun scheinen. Ist es möglich?

Wenn es relevant ist, verwende ich mysysgit (Git Version: 1.9.5.msysgit.1).

Antwort

3

arbeiten werde zunächst die Datei finden haben:

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

Verwenden Sie dann git blame für den zurückgegebenen Pfad.

+0

'git ls-files - '**/somefile '| xargs git Schuld' Sollte die beste Lösung sein. –

+0

'git Schuld 'akzeptiert nicht mehrere Dateien, wenn Sie es mit' xargs' verwenden, müssen Sie es sagen, um nur eine Datei zu einer Zeit zu übergeben: ' git ls-files - '**/somefile' | xargs -n1 git schuld ' –

0

Dies funktioniert für mich in Bash auf OS X fein:

git blame -- **/foo.json 

ich die Anführungszeichen weglassen musste für sie ... Sie

+0

Das ist eine Shell-Erweiterung, die nichts mit Git zu tun hat. – Hasturkun

+0

Funktioniert nicht für mich. Ich bekomme einen Fehler: "fatal: kein solcher Pfad '**/somefile' in HEAD –

+0

Sie haben es wahrscheinlich nicht aktiviert können Sie überprüfen mit' shopt globstar' –