Fuse filesystem for Git
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


git mount

This is a really simple script that connects Ruby's Grit and FuseFS libraries together. You can do git mount /tmp/blah in your git repository, and then in /tmp/blah you will have a (read-only) filesystem where view the different branches and tags of your repository simultaneously.

It is horrendously slow for even moderately sizes repositories though... I suspect the bottleneck is Grit, but on a moral level the idea of ls having to interpret Ruby code offends me. I fully intend to rewrite this in C, but in case that never happens, here's what I have so far.

By the way, you can unmount the filesystem with fusermount -u /tmp/blah.