Назад | Перейти на главную страницу

Перемещение сервера git: нужно ли делать репозитории голыми?

Я перетаскиваю кучу репозиториев git компании со старого хоста на сервер git нашей компании. Я начал просто git clone-перенос старых репозиториев в каталог репозиториев на новом сервере. Вскоре мы собираемся указать DNS для старого хоста на новый сервер.

У меня такой вопрос: следует ли мне делать новые репозитории голыми репозиториями до того, как произойдет это переключение, или они могут функционировать как есть (обычные, не голые репозитории с .git/ каталоги)? Я предполагаю первое, но мне хотелось бы, чтобы кто-нибудь, кто действительно знает, подтвердил это.

Как сказал voretaq7. Да, это очень желательно.

В GitMagic ch3 есть хорошее объяснение, почему вы хотите использовать голое репо.

Открытый репозиторий назван так потому, что у него нет рабочего каталога; он содержит только файлы, которые обычно скрыты в подкаталоге .git. Другими словами, он поддерживает историю проекта и никогда не хранит моментальный снимок какой-либо данной версии.

Пустой репозиторий играет роль, аналогичную роли главного сервера в централизованной системе контроля версий: это дом вашего проекта. Разработчики клонируют ваш проект на его основе и вносят в него последние официальные изменения. Обычно он размещается на сервере, который мало что делает, кроме распространения данных. Разработка происходит в клонах, поэтому домашний репозиторий может обойтись без рабочего каталога.

Чтобы упростить переход, используйте:

git clone --mirror

Есть вопрос о StackOverflow, в котором обсуждается разница между git clone --mirror и git clone --bare.

Ты не иметь чтобы сделать их пустыми репозиториями, но я настоятельно рекомендую сделать это ради косметической согласованности (git «серверы» имеют голое репо, git «клиенты» имеют проверку с каталогом .git).

По крайней мере, резервное копирование меньше.