2014-09-18 12 views
22

Chcę uzyskać dostęp do gołego repozytorium git i chcę wyświetlić wszystkie pliki w repozytorium.git ls-files in bare repozytorium

W normalnym repozytorium git mogę to zrobić, uruchamiając git ls-files.

Przykład Wydajność:

$ git ls-files 
README.md 
file1.js 
file2.js 
file3.js 
folder1/file4.js 
folder2/file5.js 

W nagim repozytorium git niepowodzenia cicho. To po prostu nie zwraca żadnych plików (ale wychodzi z powodzeniem):

$ cd my-bare-repository 
$ git ls-files #returns nothing 
$ echo $? #print exit code from previous command 
$ 0 

Teraz zdaję sobie sprawę, że muszę dostarczyć znaczącego oddziału lub kapitanowi, aby wyświetlić. Ale jak mogę uzyskać tę listę plików, o których wiem, że są w moim repozytorium?

Odpowiedz

34

Można spróbować innej komendy, która lista plików:

git ls-tree --full-tree -r HEAD 

Według to this comment, komenda git ls-tree prace w bare repo.

+0

Dzięki, to działa. Jednak w moim obecnym przykładzie, otrzymuję to samo wyjście zi bez '--full-tree' –

+3

@ JesperRønn-Jensen posiadasz również' git ls-tree --full-tree -r --name-only HEAD', aby wyświetlić tylko nazwy plików, (bez wiodących informacji na temat uprawnień i wartości SHA dla blobu) – VonC

+0

Akceptuję tę odpowiedź, ponieważ jest ona ważniejsza niż prosiłem :) +10 za poprawność, +10 za szybką odpowiedź :) –

Powiązane problemy