Насколько безопасный “мерзавец” с ненадежным соединением?

Я использую мерзавца для управления исходным кодом и продвигаю мои изменения в репозитории на сервере в Интернете для безопасного хранения.

Я могу сделать некоторые небольшие количества кодирования на ноутбуке на поезде, который имеет подключение к Интернету Wi-Fi, но дело не в этом надежный и иногда выбывает или становится неприменимым медленный. Мой вопрос - то, что происходит, если мое соединение потеряно во время "нажатия мерзавца"? Я закончу с поврежденным или половиной обновленного репозитория мерзавца? И если так, как трудный это должно восстановить его?

19
задан jcoder 8 August 2010 в 08:04
поделиться

2 ответа

Git не повредит или «наполовину обновит» ваш репозиторий Git только из-за неудачного или медленного соединения. Он очень прочный, и мне было бы удобно использовать его даже в самых тяжелых условиях.

Фактическая функция push реализуется, по существу, в два этапа (в случае быстрой перемотки вперед, что всегда должно иметь место):

  • загружать все объекты, доступные из вашей текущей ветки. и не достижима из удаленной головы ветки
  • обновить удаленную ветку, чтобы указать на последнюю фиксацию

Первая операция идемпотентна, поэтому, если она не удастся по какой-либо причине на полпути, вы можете просто запустить ее снова, чтобы получить все своевременно. Вторая операция является атомарной и выполняется только после загрузки всех новых объектов.

16
ответ дан 30 November 2019 в 04:44
поделиться

По словам Линуса, git настолько хорошо защищен в области данных, что он даже обнаружит ошибку памяти на системе, на которой работает. Он просто не будет применять пакеты, которые приходят на сервер с неверной контрольной суммой, так что вам не о чем беспокоиться.

5
ответ дан 30 November 2019 в 04:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: