Якщо я зроблю аналогію з хостингом веб-сервера, я б сказав, що дані git повинні бути /var/git, тому моє сховище git буде/var/git/myrepo
З : Це правильна здогадка?
Якщо я зроблю аналогію з хостингом веб-сервера, я б сказав, що дані git повинні бути /var/git, тому моє сховище git буде/var/git/myrepo
З : Це правильна здогадка?
Відповіді:
Тут немає правильної чи неправильної відповіді, крім тієї, яку диктує ваша особиста релігія та вміст сторінки сторінки hier(7)у вашій системі.
Типовий Linux hierсторінка керівництво ; Типова BSD hierсторінка керівництва )
/var/git/*особисто мені здається розумним. Ось де я зберігаю своє.
Помістіть його в каталог (або спільну файлову систему) під /srv. Це для чого.
/srvДовідник призначений для даних конкретних ділянок , що обслуговуються системою . Зі стандартного:
Основна мета цього уточнення полягає в тому, щоб користувачі могли знайти розташування файлів даних для певного сервісу, і таким чином, щоб сервіси, які потребують єдиного дерева для лише перегляду даних, даних, що записуються, та скриптів (наприклад, cgi-скриптів), могли бути розміщені розумно. Дані, які цікавлять лише конкретного користувача, повинні міститись у домашньому каталозі цих користувачів.
Методика, що використовується для назви підкаталогів,
/srvне визначена, оскільки наразі немає єдиної думки щодо того, як це робити. Один з методів структурування даних/srvза протоколом, наприклад.ftp,rsync,www, Іcvs. На великих системах це може бути корисно структурувати/srvадміністративним контексті, наприклад/srv/physics/www,/srv/compsci/cvsі так далі Ця установка буде відрізнятися від хоста для розміщення. Тому жодна програма не повинна покладатися на конкретну структуру підкаталогу/srvіснуючих або даних, які обов'язково зберігаються в/srv. Однак/srvзавжди має існувати в системах, сумісних з FHS, і їх слід використовувати як місце за замовчуванням для таких даних.Поширення повинні обережно не видаляти локально розміщені файли в цих каталогах без дозволу адміністратора.
У системі з підтримкою SELinux каталог за замовчуванням є /var/www/git, а repos має знаходитись у підкаталогах. Або ви можете використовувати, наприклад, /srv/gitі встановити контекст файлу як еквівалентний:
semanage fcontext -a -e /var/www/git /srv/git
/home/git/
Спочатку це може здатися трохи нетрадиційним, але це дуже розумно, оскільки цей каталог створений для вас (з правильними дозволами), коли ви це робите sudo useradd git. Ви можете просто перейти на користувача git cdта негайно запустити:
$ mkdir .ssh; chmod 700 .ssh
$ touch .ssh/authorized_keys; chmod 600 .ssh/authorized_keys
і помістіть відкриті ключі ваших однолітків у щойно створений файл дозволених ключів.
Після того, як ви подали git init --bareсвій проект, "URL-адреса" буде просто ... зачекайте його ...
git@<server>:<project>
Як сказав voretaq7, на цю тему немає правильної чи неправильної відповіді. Однак, якщо ви хочете стежити за софт, здається, що софт бази даних зберігає свої дані в
/var/lib/soft
Наприклад, для Postgresql 9.1 на debian папка є
/var/lib/postgresql/9.1/
Тож я б особисто обрав
/var/lib/git
У моєму Arch Linux у мене /srv/httpє апарат apache (який є системним за замовчуванням), і я також його використовую для своїх http-серверів node.js. Так само я вирішив просто помістити всі сховища git /srv/git.
Я використовую GitLab, і /srv/gitв цьому випадку є домашньою папкою для git.
Зрештою, це залежить від вас. Я виявив, що дотримуватися формату, подібного до інших служб у вашому дистрибутиві, легко запам'ятовується.
Якщо ви використовуєте деякий фронтенд для git, просто перейдіть туди, куди той, який упакований вашим розповсюдженням, хоче розмістити їх. Все інше - це лише створення непотрібних несумісностей.
По-перше, щодо пропозиції щодо використання / srv, ви припускаєте, що всі сховища git використовуються для веб-сайтів. Це може бути правдою для вас, але ви можете мати програмне забезпечення, яке не є веб-сайтом.
По-друге, зберігаючи свої сховища коду поза / var / www / html або / srv / html, ви отримуєте дві приємні переваги. Ви можете створювати символічні посилання в репо-рене на будь-якому рівні, полегшуючи приховувати свої бібліотеки. Крім того, якщо місцезнаходження вашого репозиторію взагалі змінюється, вам не доведеться змінювати конфігурації віртуального хоста. Натомість ви просто налаштовуєте свої символічні посилання.
Я використовував / var / repo, але я вважаю, що / var / git краще, і з цього моменту буде використовувати це.