Если вы не хотите использовать выделенный сервер, всегда есть возможность использовать один из локальных репозиториев разработчиков как «источник», который каждый другой клон разработчика.
Это можно легко сделать с помощью SSH:
- Настройка сервера SSH на машине происхождения.
- Предоставьте каждому разработчику SSH доступ к машине (либо с использованием отдельных учетных записей, либо с помощью общей учетной записи, например, «разработчик»).
- Попросите каждого разработчика клонировать хранилище с этой машины.
Клонирование с помощью SSH можно сделать так:
git clone [email protected]:/full/path/to/repo/.git
... где мой счет- это учетная запись пользователя, и происхождения машина это машина, которая содержит хранилище происхождения ,
Теперь каждый разработчик может извлекать и нажимать изменения, тем самым синхронизируя друг с другом через машину происхождения.
Аналогичным образом можно синхронизировать с несколькими различными машинами, если вы так хотите, путем создания более SSH пультов ДУ, например:
git remote add machine2 [email protected]:/some/other/path/to/repo/.git
git fetch machine2
...
git push machine2 my-new-branch
... и т.д..
Однако, есть улов: По умолчанию вы не можете нажать изменения в отрасли, которая в настоящее время проверяется на удаленной машине (мерзавец предупредит вас, если вы попытаетесь сделать это, и, откровенно говоря, вы do not want to do it anyway) , Следовательно, вам придётся разработать стратегию ветвления, которая позволяет избежать таких ситуаций (например, если все разработчики работают над отдельными ветвями функций, а не с общей ветвью, это хороший старт).
С учетом этого я бы настоятельно рекомендовал с использованием локального выделенного сервера с открытым репозиторием (он обычно всегда в сети, и у вас нет проблем с проверенными ветвями на машине разработчика).Сервер не обязательно должен быть причудливым - что-то простое, как малина Pi должно хватить в небольшой команде (есть простой учебник here).
У вас не может быть * локального * сервера? – Biffen
уверен, что смогу. Я прошу это понять теоретический рабочий процесс git без централизованного репозитория. – user5157427
Вы можете настроить зеркала? Я не уверен, что понимаю, почему вы не хотите центрального репо? – hjpotter92