Мінімалістичний гостьовий репозиторій Git


Я тут давно експериментую з різними форматами публікації коду Git, наприклад:

Radicle: децентралізований P2P хостинг Git/DVCS


Але все це "товсті", голодні до CPU та пропускного каналу крипто-цяцьки. Все-таки, я бачу оптимальним хостинг власного репозиторію на своєму сервері: допоки він живий - качайте, децентралізуйте (Git по своїй природі такий)


От я в принципі вирішив опублікувати дзеркало індексу Crates для проксі Kellnr:

Організація локального дзеркала залежностей Cargo з Kellnr


Доступні платформи типу Gitea, Forgejo і навіть штатний httpd - це про сошл, а мені потрібно просто віддати код.


sudo dnf install git-daemon

Створімо умовний публічний корінь, де лежатиме репозиторій:


mkdir /path/to/git

Копіюємо до нього репозиторій з файлової системи або клонуємо віддалений:


cd /path/to/git
git clone https://github.com/rust-lang/crates.io-index.git

Відкривши на фаєрволі стандартний порт 9418/TCP, запускаємо сервер:


git daemon --verbose --base-path=/path/to/git --listen=0.0.0.0 --reuseaddr --export-all

Ось власне і все! Забрати репозиторій (доступний виключно на читання) можна командою:


git clone git://0.0.0.0/crates.io-index.git


/uk/