fiar es un FUSE-sistema de archivos que se monta cualquier número de repositorios git sólo lectura, lo que permite el acceso directo a todas las confirmaciones y sus archivos a través de una estructura de directorios.
, a menos que existan errores catastróficos en el software de fiar es de sólo lectura, no se debe tocar tus datos de cualquier manera.
La instalación (de PyPI)
Asumiendo que su virtualenvwrapper tienen instalado:
& nbsp; mkvirtualenv legitfs
& Nbsp; pip install legitfs
Instalación (sin PyPI)
fiar requiere los enlaces Python FUSE, por lo general están disponibles (y más a menudo ya instalado) a través de su distribución. El paquete correcto en PyPI se llama fusible-python.
Además, se requiere una versión algo reciente dulwich. Instalar a través de su distro o vía PyPI.
El programa en sí es sólo un único archivo. Descárgalo a cualquier lugar en tu camino y ejecutarlo.
Si usted tiene el paquete de vigilancia instalado, de fiar se actualizará automáticamente el sistema de archivos-contents cuando se agrega, actualizar o eliminar repositorios.
Ejemplo de uso
Vamos a intentarlo! En un directorio vacío, escriba:
& Nbsp; git clone git: //github.com/mbr/simplekv.git
& Nbsp; git clone git: //github.com/mitsuhiko/flask.git
Eso clonar dos repositorios git para nosotros jugar con. Ahora cree un punto de montaje en alguna parte
& Nbsp; mkdir / tmp / legitfs-test
Finalmente, montamos el directorio actual (y por lo tanto sus repositorios git):
& Nbsp;. Legitfs -o = raíz / / tmp / legitfs-test
Hecho! Ahora vamos a ver lo que tenemos:
& Nbsp; ls / tmp / legitfs-test /
simplekv frasco
legitfs trata de recrear la estructura de directorios y también se encarga de repositorios anidados o los que están en los subdirectorios. Por supuesto, también puede montar un solo repositorio en la raíz.
Algunas cosas más interesantes:
ls / tmp / legitfs-test / frasco /
comete árbitros CABEZA
& nbsp; ls / tmp / legitfs-test / frasco / refs / tags -l
total de 48
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.1 -> ../../commits/8605cc310d260c3b08160881b09da26c2cc95f8d
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.2 -> ../../commits/e0fa5aec3a13d9c3e8e27b53526fcee56ac0298d
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.3 -> ../../commits/ce6e4cbd73d57cb8c1bba85c46490f71061f865f
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.3.1 -> ../../commits/6b3e616cf905fd19c37fca93d1198cad1490567b
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.4 -> ../../commits/1592c53a664c82d9badac81fa0104af226cce5a7
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.5 -> ../../commits/4c937be2524de0fddc2d2f7f39b09677497260aa
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.6 -> ../../commits/5cadd9d34da46b909f91a5379d41b90f258d5998
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.6.1 -> ../../commits/774b7f768214f5b0c125a1b80daa97247a0ac1a6
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.7 -> ../../commits/fb1482d3bb1b95803d25247479eb8ca8317a3219
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.7.1 -> ../../commits/9682d6b371d8c1ce1fd0e58424e836d27d2317b3
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.7.2 -> ../../commits/3f5db33ece48bd22b77fcc62553998ea9a6cfdfc
lrwxrwxrwx. 1 root root 4096 1. 01 1970 0.8 -> ../../commits/d5e10e4685f54dde5ffc27c4f55a19fb23f7a536
Cada repositorio contiene al menos tres archivos: comete contiene directorios, uno para cada confirmación, lo que le permite acceder a confirmaciones. CABEZA es la corriente HEAD-ref y es, como todos los árbitros, un enlace simbólico. árbitros también funciona como es de esperar y está lleno de enlaces simbólicos.
Otra característica son referencias relativas:
& Nbsp; la cabeza N5 /tmp/legitfs-test/flask/refs/tags/0.7~15/README
& Nbsp; // // Frasco
& Nbsp; el desarrollo web, una gota a la vez
Note el '0.7 ~ 15', que es git-hablar de "etiqueta 0.7, y luego ir 15 revisiones de regreso". Si bien estos "archivos" virtuales no se muestran cuando ls directorio refs / etiquetas, puede añadir cualquier número de ~ n ^ o para cualquier árbitro volver comete.
Requisitos
- Python
- Sistema de archivos en el espacio de usuario
Comentarios que no se encuentran