2010-04-14 16 views
6

Gibt es ein git find Analogon von git grep, d. H. Etwas, das einen Dateinamen nach Muster im Baum findet? Ich habe eine Menge Git-Dokumentation durchgesehen und nicht gefunden, aber es fällt mir schwer zu glauben, dass es irgendwo nicht existiert.Gibt es einen "git find"?

Antwort

6

Sie alle Dateien in einem Baumobjekt git ls-tree -r --name-only --full-tree <treeish> mit auflisten können. Pipe dies durch einen normalen Grep, um zu finden, wonach du suchst.

+3

wie wäre es mit 'git ls-files' und pipe das durch grep? – hasen

+1

'git ls-files' listet nur Dateien auf, die gerade vorhanden sind. Geoffs Antwort zeigt * alle * Dateien in der Baumstruktur, einschließlich Dateien, die in der Vergangenheit gelöscht wurden. – splicer

1

Es ist einfach auszuführen:

git ls-files 'yourpattern' 
+2

das fast funktioniert; Es verwendet statt Regexps Klumpen und verlangt von mir, dass ich 'ls-files **/filename' anstelle von' ls-files filename' sage. Es scheint komisch, dass git regexp den Inhalt von Dateien durchsuchen kann, aber nicht durch ihre Dateinamen. –

Verwandte Themen