I want to access a bare git repository, and I want to list all files in the repository.
On a normal git repository I can easily do that by running git ls-files
.
Example output:
$ git ls-files
README.md
file1.js
file2.js
file3.js
folder1/file4.js
folder2/file5.js
In a bare git repository this fails silently. It just doesn't return any files (but exits successfully):
$ cd my-bare-repository
$ git ls-files #returns nothing
$ echo $? #print exit code from previous command
$ 0
Now I am aware that I have to provide a meaningful branch or master to display. But how can I actually get this list of the files that I know are in my repository?
You can try the other command which list files:
git ls-tree --full-tree -r HEAD
According to this comment, the command git ls-tree works in bare repo.