legit là một FUSE-hệ thống tập tin mà gắn kết bất kỳ số lượng các kho git chỉ đọc, cho phép truy cập trực tiếp tới tất cả các cam kết và tập tin của họ thông qua một cấu trúc thư mục.
legit là chỉ đọc, trừ khi có lỗi nghiêm trọng trong phần mềm, nó không nên chạm vào dữ liệu của bạn trong bất kỳ cách nào.
Cài đặt (từ PyPI)
Giả sử bạn có virtualenvwrapper cài đặt:
& Nbsp; mkvirtualenv legitfs
& Nbsp; pip cài đặt legitfs
Cài đặt (không PyPI)
VN yêu cầu các ràng buộc FUSE python, thì thông thường có sẵn (và thường xuyên nhất đã được cài đặt) qua distro của bạn. Các gói đúng vào PyPI được đặt tên là cầu chì-python.
Ngoài ra, một phiên bản hơi gần đây của Dulwich là bắt buộc. Cài đặt nó thông qua các distro của bạn hoặc thông qua PyPI.
Các chương trình chính nó chỉ là một tập tin duy nhất. Tải về nó đến bất cứ nơi nào trong con đường của bạn và chạy nó.
Nếu bạn có các gói cơ quan giám sát lắp đặt, VN sẽ tự động làm mới các hệ thống tập tin, nội dung khi bạn thêm, cập nhật hoặc loại bỏ các kho.
Cách sử dụng ví dụ
Hãy thử nó! Trong một thư mục rỗng, gõ:
& Nbsp; git clone git: //github.com/mbr/simplekv.git
& Nbsp; git clone git: //github.com/mitsuhiko/flask.git
Điều đó sẽ nhân bản hai kho git cho chúng tôi để chơi với xung quanh. Bây giờ tạo một điểm láp đâu đó
& Nbsp; mkdir / tmp / legitfs-test
Cuối cùng, chúng tôi sẽ mount thư mục hiện tại (và do đó kho git của nó):
& Nbsp;. Legitfs -o = root / / tmp / legitfs-test
Xong! Bây giờ chúng ta hãy xem những gì chúng tôi đã có:
& Nbsp; ls / tmp / legitfs-test /
bình simplekv
legitfs cố gắng để tái tạo các thư mục cấu trúc và cũng xử lý các kho lồng nhau hoặc những người trong thư mục con. Tất nhiên, bạn cũng có thể gắn chỉ là một kho lưu trữ ở thư mục gốc.
Một số công cụ thú vị hơn:
ls / tmp / legitfs-test / bình /
cam refs TRỤ
& Nbsp; ls / tmp / legitfs-test / bình / refs / tags -l
tổng số 48
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.1 -> ../../commits/8605cc310d260c3b08160881b09da26c2cc95f8d
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.2 -> ../../commits/e0fa5aec3a13d9c3e8e27b53526fcee56ac0298d
lrwxrwxrwx. 1 root root 4096 1. Jan 1970 0.3 -> ../../commits/ce6e4cbd73d57cb8c1bba85c46490f71061f865f
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.3.1 -> ../../commits/6b3e616cf905fd19c37fca93d1198cad1490567b
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.4 -> ../../commits/1592c53a664c82d9badac81fa0104af226cce5a7
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.5 -> ../../commits/4c937be2524de0fddc2d2f7f39b09677497260aa
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.6 -> ../../commits/5cadd9d34da46b909f91a5379d41b90f258d5998
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.6.1 -> ../../commits/774b7f768214f5b0c125a1b80daa97247a0ac1a6
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.7 -> ../../commits/fb1482d3bb1b95803d25247479eb8ca8317a3219
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.7.1 -> ../../commits/9682d6b371d8c1ce1fd0e58424e836d27d2317b3
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.7.2 -> ../../commits/3f5db33ece48bd22b77fcc62553998ea9a6cfdfc
lrwxrwxrwx. 1 root root 4096 1. Tháng 1 1970 0.8 -> ../../commits/d5e10e4685f54dde5ffc27c4f55a19fb23f7a536
Mỗi kho chứa ít nhất ba file: cam chứa các thư mục, một cho mỗi cam kết, cho phép bạn truy cập vào các cam kết. HEAD HEAD-ref hiện tại và là, giống như tất cả các refs, một liên kết tượng trưng. refs cũng làm việc như bạn mong đợi và có đầy đủ các liên kết tượng trưng.
Một tính năng khác là refs tương đối:
& Nbsp; đầu -n5 /tmp/legitfs-test/flask/refs/tags/0.7~15/README
& Nbsp; // // Flask
& Nbsp; phát triển web, một giọt tại một thời điểm
Chú ý '0.7 ~ 15', mà là git-nói cho "tag 0.7, sau đó đi 15 sửa đổi lại". Trong khi những "tác phẩm" ảo không được hiển thị khi bạn ls thư mục refs / tags, bạn có thể thêm bất kỳ số lượng ~ n hay ^ để ref nào để quay trở lại cam kết.
Yêu cầu :
- Python
- Hệ thống tập tin trong Userspace
Bình luận không