2

Я только что получил доступ к серверу, который кто-то сказал, это "Git репозиторий"

Я не использовал git раньше, но я предполагаю, что это должно означать, что где-то есть набор файлов, которые являются "золотыми копиями", из которых извлекают другие разработчики, когда они делают свои обновления git. Как мне найти эти каталоги? Как я могу определить, какой «URL-адрес доступа» могут использовать люди, которые хотят оформить заказ?

Спасибо

1 ответ1

2

Обратите внимание, что Git, как и другие DVCS, используют несколько иные концепции, чем централизованные системы SVN или CVS. В частности, обычно используется не для "проверки", а для клонирования репозитория с загрузкой его полной истории, а не только заголовка. Другими словами, тот факт, что на вашем сервере есть "золотые копии", носит политический характер, и любой клон можно легко использовать как "золотую копию". Это не очень важно сейчас, но все же стоит помнить, особенно когда вы забыли сделать резервные копии ...

Узнайте, какое программное обеспечение использовалось для настройки сервера - это был Gitolite, Gitosis или просто пользовательская настройка ssh + git-daemon?

Gitolite и Gitosis используют центральный файл конфигурации и хранят все в домашнем каталоге учетной записи с именем git . Запустите cd ~git , поищите там репозитории. Скорее всего, URL будут git://<server>/<repository>.git для публичного доступа и git@<server>:<repository>.git для пересылки через SSH. И Gitosis, и Gitolite имеют отдельные инструменты управления - попробуйте команду gitolite .

Если в системе нет такой учетной записи или если она не содержит репозитория "admin", проверьте, прослушивает ли что-нибудь порт 9418, порт Git Smart Protocol; если это git-daemon , проверьте его командную строку с помощью ps www <pid> . Общедоступные URL-адреса по-прежнему будут начинаться с git://<server>/ , но остальное зависит от параметров командной строки git-daemon; может требовать или не указывать полный путь к файловой системе, может поддерживать или не поддерживать "vhosts"; в нем могут быть включены или нет пользовательские каталоги в стиле ~username/path/repo.git repo.git. SSH-адресами могут быть <username>@<server>:</path/to/repo>.git ; обратите внимание, что SSH всегда работает даже без git-daemon.

На сервере также может быть настроен веб-интерфейс (cgit или gitweb), в котором должны быть перечислены все настроенные репозитории. Попробуйте получить к нему доступ через веб-браузер. Посмотрите в /etc конфигурацию gitweb / cgit.

Полезной командой является git ls-remote <url> , которая может показать краткую сводку хранилища без клонирования. Таким образом, вы можете проверить, действительны ли URL-адреса.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .