У нас есть серверы, развернутые в автобусах и поездах с подключенными интернет-ключами. Эти серверы через регулярные промежутки времени выполняют git pull для обновления развернутой на них кодовой базы. Теперь, из-за нестабильности и нестабильности интернета от этих ключей, git pull часто прерывается во время работы, что приводит к повреждению нашего локального репозитория. Мы часто попадаем в состояние, когда git начинает жаловаться на незакрепленные объекты git, которые очень трудно исправить.
Кажется, git pull не очень устойчив к сбоям. Просто интересно, есть ли у кого-нибудь рекомендации, как сделать git pull отказоустойчивым, что-то вроде «все или ничего».
Не используйте для этого git, потому что git передает файл за файлом (соответственно, diff-by-diff). Вы можете использовать пакеты для развертывания новых версий программного обеспечения, таких как .deb, .rpm или .msi, в зависимости от вашей ОС в автобусах и поездах.
Пакеты загружаются в виде одного файла, а программное обеспечение обновляется после загрузки и проверки всего пакета , поэтому это лучший способ обеспечить безопасное обновление в этой среде.