Czy można wyszukać konkretną nazwę pliku w serwisie GitHub?

144

Wiem, że interfejs sieciowy GitHub umożliwia przeszukiwanie wszystkich repozytoriów w poszukiwaniu plików o określonej ścieżce (np. Wyszukiwanie path:/app/models/user.rbwyników> 109k wyników), ale czy istnieje sposób na przeszukiwanie wszystkich repozytoriów pod kątem nazw plików niezależnie od ich lokalizacji w podkatalogu? Próbowałem użyć gwiazdek w pathargumencie, ale to nie działało.

Peter Alfvin
źródło
jakie polecenie wykonujesz? czy spróbujesz lszamiast znaleźć
meda
1
Miałem na myśli interfejs WWW - to wszystko, czego próbowałem.
Peter Alfvin
8
Ktokolwiek przegłosował, nie mam pojęcia, dlaczego. Wiem, że to nie jest „kwestia programowania”, ale wygląda na to, że jest to pytanie dotyczące „narzędzi programistycznych”, a na tej stronie są inne pytania na githubie. Jeśli chodzi o jakość pytania, byłbym wdzięczny za więcej informacji lub głosowanie za zamknięciem, abym mógł zobaczyć, o czym mówisz.
Peter Alfvin

Odpowiedzi:

123

Czy wyszukiwanie user.rb in:path robi to, co chcesz? Alternatywnie istnieje również to wyszukiwanie filename:user.rb

Znalezione na: https://help.github.com/articles/searching-code/

Orangenhain
źródło
3
używanie in:path YOUR_FILENAME_HEREdziała świetnie - i co bardzo ważne, działa między repozytoriami, więc możesz przeszukiwać repozytoria całej organizacji, aby znaleźć repozytoria zawierające określoną nazwę pliku. Ładny!
Brad Parks,
1
To już nie jest możliwe. Wyszukiwania, które łączysz, zwracają następujący błąd: „Nie mogliśmy przeprowadzić tego wyszukiwania. Musi zawierać co najmniej jednego użytkownika, organizację lub repozytorium”
hedgie
2
Tak, robią ... po prostu musisz być zalogowany do GitHub, aby działał. Nie wiem, kiedy to zmienili. Jest to ogólny problem dotyczący wyszukiwania kodu, a nie tylko tych konkretnych wyszukiwań.
Orangenhain
Szkoda, że ​​tylko „ścieżka zawiera ten ciąg w dowolnym miejscu”, a nie jak nazwa pliku globs czy coś podobnego: |
rogerdpack
Jak wyszukiwać tylko według rozszerzenia?
AnupamChugh
59

Podczas wyszukiwania możesz użyć filenameparametru, aby przeszukać wiele repozytoriów, na przykład:

filename:my_filename.txt

Jeśli szukasz nazwy pliku w określonym repozytorium, możesz po prostu nacisnąć ti zacząć wpisywać nazwę pliku (patrz: skróty klawiaturowe GH ).

kenorb
źródło
2
To jest poprawna odpowiedź. Zauważ, że w zapytaniu nie ma spacji.
Erik
30

GitHub wprowadził FileFinder w 2011 roku.

Wypróbuj: po prostu naciśnij t na dowolnym widoku pliku lub katalogu repozytorium. [1]

Więc nadal jesteś ograniczony do repozytorium.

[1] https://github.com/blog/793-introducing-the-file-finder

Inne podejście do Twojego pytania:

Czy mogę używać Git do wyszukiwania pasujących nazw plików w repozytorium?

Kamiccolo
źródło
1
Tak, wiedziałem o tym i powinienem był wspomnieć o tym w moim pytaniu. Więc nie ma możliwości przeszukiwania repozytoriów? Jeśli nie, czy wiesz, czy jest jakiś techniczny powód, dla którego nie?
Peter Alfvin
4
och, więc Ty też próbowałeś some_weird_file_Youre_looking_for.ext in:path? Ponieważ to działa dla mnie ...
Kamiccolo,
nie, ale właśnie spróbowałem path:user.rbi dało mi to tylko 324 wyniki, wszystkie user.rbna najwyższym poziomie.
Peter Alfvin
Wygląda na to, że wszystkie Twoje wyniki również index.phpsą na najwyższym poziomie.
Peter Alfvin
1
@Kamiccolo, powinieneś opublikować to jako odpowiedź, ponieważ to jest dokładnie właściwa odpowiedź! Peter Alfvin też powinien to zaakceptować ... ważne jest: ścieżka. Zweryfikowano, że działa niezależnie od tego, gdzie w ścieżce znajduje się nazwa pliku, a nie tylko w przypadku plików najwyższego poziomu.
Sam Salisbury
11

W moim przypadku chciałem wyszukać konkretną nazwę pliku we wszystkich repozytoriach mojej organizacji. Można to zrobić, wpisując w polu wyszukiwania:

org: nazwa-użytkownika-twojej-organizacji nazwa- pliku: nazwa -pliku

Oczywiście po prostu wpisz „nazwa-pliku: nazwa-pliku”, jeśli chcesz przeszukać cały GitHub.

Nie widziałem tego na https://help.github.com/articles/searching-code/, ale dowiedziałem się, kiedy przełączyłem kontekst, a GitHub automatycznie wszedł do filtru.

Nagev
źródło
9

Możesz spróbować Google. Google dla filename.txt site:github.com.

Andy Lester
źródło
1
+1 dla tego, co zakładam, pasuje nie tylko do bieżących nazw plików, ale do wszystkich plików, które zawierają ten tekst, a także do pewnej liczby nazw plików z wcześniejszych wersji repozytoriów.
Peter Alfvin
5

Doprecyzowałem odpowiedź @ andy-lester za pomocą intitle:, tj. Chcę znaleźć lokalizację pliku simple_spinner_item.xmlw kodzie źródłowym Androida na github, więc wyszukuję w Google ten ciąg:

site:github.com intitle:simple_spinner_item.xml github.com/android

^                       ^                       ^
|                       |                       |
on github site          |                       |
                        |                       |
filename I'm searching -+                       |
                                                |
github user ------------------------------------+
MaxChinni
źródło
1

Chciałbym wyjaśnić odpowiedź @ajain .

  1. W interfejsie WWW Github musisz już znajdować się w widoku katalogu Reopa.

wprowadź opis obrazu tutaj


  1. Następnie naciśnij Tklawisz. Pojawi się wyszukiwarka plików.

wprowadź opis obrazu tutaj


  1. Wprowadź nazwę pliku, aby go otworzyć.

wprowadź opis obrazu tutaj


Więcej skrótów do przeglądania kodu źródłowego .

Penny Liu
źródło
-3

Po prostu naciśnij "t", a to pozwoli ci wyszukać plik.

ajain
źródło
1
Trochę wyjaśnienia: musisz już być w widoku katalogu Reopa. Zobacz odpowiedź @ Kamiccolo poniżej
tfantina