Страницы

Поиск по вопросам

суббота, 14 декабря 2019 г.

Что такое snapshot в Git?

#git


В книге по Git написано:
"Git хранит данные не как последовательность изменений или дельт, а как последовательность
снимков состояния (snapshot)."
Т.е., как я понимаю, snapshot - это состояние каких-то файлов или папок определенного
момента времени. 
Я пытался найти в .git эти состояния. Так и не нашел. Ну ладно, не важно как в Git'е
это реализуется. Но я не могу понять, что мне дает знание того, в чем различие между
snapshot и "не как последовательность изменений или дельт". И вообще что мне дает знание
того, что такое snapshot.    


Ответы

Ответ 1



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

Ответ 2



Если я правильно понимаю, факт того, что "Git хранит данные не как последовательность изменений или дельт, а как последовательность снимков состояния (snapshot)." дает гиту возможность откатиться до определенного состояния проекта в целом, а, например, Subversion может откатить только конкретные файлы. Это можно рассматривать как преимущество гита в каком то смысле. Если я не прав, поправьте меня.

Комментариев нет:

Отправить комментарий