Мы используем git для исходного кода нашего проекта, работая в большой команде. Сейчас около половины разработчиков уходят на локальную фазу проекта. Эта фаза будет включать в себя интенсивное развитие, то есть много коммитов. В то же время другая оставшаяся половина также продолжит работу над кодом.
К сожалению, на месте будет только прерывистое и ненадежное подключение к Интернету. Тем не менее, очень важно, чтобы команда на месте могла синхронизировать (фиксировать / выдвигать / извлекать) свои изменения между собой. Но также важно, чтобы изменения, сделанные в «центральном» git-хранилище остальной частью команды в офисе, были доступны.
Поэтому я ищу настройку, которая позволит локальной команде эффективно работать с использованием git, даже если интернет не работает в течение длительного периода времени, а также иметь возможность синхронизации с офисом при работе в Интернете. есть в наличии.
Есть ли простой и надежный способ сделать это?
Моя первая идея: взять с собой нетбук, чтобы он действовал как "сервер" и имел клон репозитория. Затем попросите команду на месте изменить свое происхождение на нетбук, а затем вытолкнуть его из нетбука. Но синхронизация с основным репозиторием доставляет мне некоторые неприятности. Выполнение git push на нетбуке работает нормально, но git fetch не возвращает мне изменения, сделанные в основном репо.
Кроме того, я беспокоюсь о том, что произойдет, если файл будет изменен в обоих репозиториях и возник конфликт - полагаю, кому-то нужно будет поработать над нетбуком, чтобы разрешить конфликт и зафиксировать его, прежде чем произойдет синхронизация?