Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

A read-only FUSE-based filesystem allowing you to browse git repositories

Project Description


legit is a `FUSE <>`_-filesystem that mounts git
repositories read only, allowing direct access to commits, tags and branches
through the filesystem. This allows you to browse old versions from inside your
favorite editor, provided it doesn't produce a mess by trying to read the whole

legitfs is read-only and won't eat your data.

legitfs 0.3 is the last version written for Python 2. legitfs 0.4 and onwards
are Python 3 only (they may run on 2.7, but are not tested on anything below


legitfs is available from PyPi::

$ pip install legitfs

It uses fusepy_ which in turn means you need to have fuse development libraries
and a C compiler installed. All other dependencies can work Python-only.

Example usage

Try this in an empty directory after installing legitfs:


$ git clone git://
$ git clone git://

Create a mountpoint and mount the current directory:


$ mkdir _history
$ legitfs _history

legitfs will run in the foreground (you can unmount with ``C-c``), so we can
continue in another terminal::

$ cd _history/
$ ls
flask simplekv
$ ls flask/.git/
$ ls flask/.git/refs/heads/master
$ ls flask/.git/refs/heads/master/tree
artwork CONTRIBUTING.rst flask setup.cfg tox.ini
CHANGES examples Makefile scripts tests

``legitfs`` tries to recreate the directory-structure and also handles nested
repositories or those that are in subdirectories. Of course, you can also mount
just one repository at the root.

Objects are exposed in the ``objects/`` subdirectory, almost everything else is
a symbolic link::

$ cd flask/.git
$ ls refs/tags
0.1 0.10 0.10.1 0.2 0.3 0.3.1 0.4 0.5 0.6 0.6.1 0.7 0.7.1 0.7.2
0.8 0.8.1 0.9
$ ls refs/tags/0.7/tree
$ head refs/tags/0.7/tree/README -n 5

// Flask //

web development, one drop at a time

Release History

This version
History Node


History Node


History Node


History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(6.4 kB) Copy SHA256 Hash SHA256
Source None Jan 24, 2017

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers