legitim este un FUSE-sistem de fișiere care montează orice număr de arhive git doar pentru citire, care permite accesul direct la toate comiteri și fișierele lor printr-o structură de directoare.
legal este read-only, dacă nu există bug-uri catastrofale în software-ul, aceasta nu ar trebui să atingă datele în nici un fel.
Instalare (de la PyPI)
Presupunând că aveți directorul virtualenvwrapper instalat:
& nbsp; mkvirtualenv legitfs
& Nbsp; pip instala legitfs
Instalare (fără PyPI)
legal necesită legăturile FUSE Python, de obicei, acestea sunt disponibile (și cel mai adesea deja instalat) prin distro dumneavoastră. Pachetul corect pe PyPI este numit siguranță-python.
În plus, este necesară o versiune oarecum recentă de Dulwich. Instalați-l prin distribuție sau prin PyPI.
Programul în sine este doar un singur fișier. Descarcă-l de oriunde în calea ta și rulați-l.
Dacă aveți pachetul watchdog instalat, legal va actualiza automat sistemul de fișiere-conținutul atunci când adăugați, modificare sau elimina arhive.
exemplu de utilizare
Să-l încercați! Într-un director gol, tip:
& Nbsp; git clone git: //github.com/mbr/simplekv.git
& Nbsp; git clone git: //github.com/mitsuhiko/flask.git
Aceasta va clona două arhive GIT pentru noi să se joace în jurul cu. Acum creați un mountpoint undeva
& Nbsp; mkdir / tmp / legitfs-test
În cele din urmă, vom mount directorul curent (și, prin urmare depozitele sale Git):
& Nbsp;. Legitfs -o = rădăcină / / tmp / legitfs-test
Done! Acum, să vedem ce avem:
& Nbsp; ls / tmp / legitfs-test /
balon simplekv
legitfs încearcă să recreeze director-structura și ocupă, de asemenea, arhive imbricate sau cele care sunt în subdirectoare. Desigur, puteți monta, de asemenea, doar un depozit de la rădăcină.
Unele lucruri mai interesante:
ls / tmp / legitfs-test / balon /
comite ref HEAD
& nbsp; ls / tmp / legitfs-test / flacon / ref / tag-uri -l
total de 48
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 la 0,1 -> ../../commits/8605cc310d260c3b08160881b09da26c2cc95f8d
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 de 0,2 -> ../../commits/e0fa5aec3a13d9c3e8e27b53526fcee56ac0298d
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 0,3 -> ../../commits/ce6e4cbd73d57cb8c1bba85c46490f71061f865f
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 0.3.1 -> ../../commits/6b3e616cf905fd19c37fca93d1198cad1490567b
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 de 0,4 -> ../../commits/1592c53a664c82d9badac81fa0104af226cce5a7
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 de 0,5 -> ../../commits/4c937be2524de0fddc2d2f7f39b09677497260aa
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 de 0,6 -> ../../commits/5cadd9d34da46b909f91a5379d41b90f258d5998
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 0.6.1 -> ../../commits/774b7f768214f5b0c125a1b80daa97247a0ac1a6
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 0,7 -> ../../commits/fb1482d3bb1b95803d25247479eb8ca8317a3219
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 0.7.1 -> ../../commits/9682d6b371d8c1ce1fd0e58424e836d27d2317b3
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 0.7.2 -> ../../commits/3f5db33ece48bd22b77fcc62553998ea9a6cfdfc
lrwxrwxrwx. 1 rădăcină 4096 1. ianuarie 1970 0,8 -> ../../commits/d5e10e4685f54dde5ffc27c4f55a19fb23f7a536
Fiecare depozit conține cel puțin trei fișiere: comite conține directoare, unul pentru fiecare comite, permițându-vă să accesați comiteri. HEAD este actualul HEAD-protestează și este, la fel ca toate ref, o legătură simbolică. ref asemenea, funcționează ca v-ați aștepta și este plin de legături simbolice.
O altă caracteristică sunt ref relative:
& Nbsp; cap -N5 /tmp/legitfs-test/flask/refs/tags/0.7~15/README
& Nbsp; // // Flask
& Nbsp; de dezvoltare web, o picătură la un moment dat
Observați "0,7 ~ 15 ', care este git-vorbesc pentru" tag-ul de 0,7, atunci du-te 15 revizuiri înapoi ". În timp ce aceste "dosare" virtuale nu sunt afișate atunci când ls directorul ref / tag-uri, puteți adăuga orice număr de ~ n sau ^ la orice Arbitrul a merge înapoi comite.
Cerințe :
- Python
- Sistem de fișiere în User
Comentariile nu a fost găsit