Серия небольших статей о системе контроля версий, известной как Git!

Контрольные суммы

В предыдущей статье я упомянул, что Git делает снимки и сохраняет ссылки на эти снимки, когда вы сохраняете свои файлы.

Чтобы быть точным, Git использует хеш-функцию SHA-1 для вычисления уникального хэша для моментальных снимков. Это также делается с содержимым каждого отдельного файла. Хэши служат именами, которые ссылаются на моментальные снимки и версии файлов.

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

Если вы знакомы с функциями хеширования, вы можете знать, что два разных файла могут создать один и тот же хэш, и вам может быть любопытно, что произойдет в таком сценарии. Это запутает Git и приведет к поломке. К счастью, вероятность того, что это произойдет, ничтожно мала, и вы можете быть уверены, что с вами этого никогда не произойдет. Вероятно.

Благодаря этим контрольным суммам вам никогда не придется беспокоиться о повреждении данных или незамеченных изменениях файлов. Если данные повреждены или произошли изменения в каталоге или файле, Git заметит это за вас.

Все еще голоден? Сделай следующий глоток →