Концепции управления версиями в широком смысле призваны облегчить совместную работу больших коллективов над изменяющейся информацией. По сути управление версиями — это набор методик по сохранению изменений в файлах таким образом, чтобы впоследствии имелась возможность просмотра этих изменений, определения их автора, а также возврата к предыдущим версиям файлов.
Процесс работы над документами (исходными кодами, проектами и т. д.) можно сравнить с прохождением компьютерной игры. По ходу продвижения Вы регулярно сохраняетесь, чтобы в случае неудачи не приходилось начинать сначала. Так и при работе с документом: Вы нажимаете кнопку «Сохранить» в своём редакторе, чтобы в случае случайного сбоя электроэнергии Вам не приходилось воспроизводить всю свою работу заново. Этот подход знаком практически каждому пользователю на Земле.
Однако при использовании такого подхода Вы имеете возможность восстановления только последней сохраненной копии. Это как в древних играх, где был только один слот для сохранения: конечно, Вы можете сохраниться, но Вы больше никогда не сможете вернуться к более раннему состоянию. Это досадно, так как прежнее сохранение могло указывать на одно из очень интересных мест в игре, и, может быть, однажды Вы захотите вернуться к нему. Или, что еще хуже, Вы сейчас находитесь в безвыигрышном положении и вынуждены начинать заново.
Подготовка к работе | Подходы к версионности |