Системы контроля версий SVN и git

SVN или Subversion – свободная система для управления версиями, которая используется для оптимизации работы с постоянно меняющимися данными, например, исходный код программы, сайта, скрипта или обычного текстового документа. Полезная утилита для разработки ПО. К примеру, Subversion используется в таких проектах как Free Pascal, GCC, Apache, AROS, Python, Ruby, Tor, Boost, Blender.
SVN имеет ряд преимуществ: автоматический процесс создания папок с несущественными отличиями, нет надобности сохранять ревизии на жестком диске, поскольку они уже размещены в репозиториях, а также переносить проекты вручную, их можно получить с репозиториями в новом месте.
Функции SVN:
- обеспечение меток;
- слияние и создание ветвей;
- перенос изменений между копиями объектов, в том числе и полного слияния копий;
- возможность зеркалирования хранилища;
- хранилище может быть в виде базы данных или обычных файлов;
- много способов доступа к хранилищу.
Еще одна популярная система распределения информации – Git. Это свободное ПО, имеется в ядре Linux, Сairo, Chromium, Mesa, Drupal, Android, PHP, jQuery, NASM и т.д.
Git считается распределённой системой, в отличие от Subversion. Позволяет править и обновлять файлы сайта с учетом тех изменений, которые были внесены другими, поэтому эта система особенно удобна, когда над одним проектом работает группа разработчиков.
Функции Git:
- хранение служебной информации в корне репозитория;
- процесс шифрования «из коробки» очень легкий;
- если работа сервера с главным репозиторием приостановится, есть возможность коммитить в локальный сервер;
- имеются полезные утилиты, такие как gitk, qgit, gitweb;
- программа позволяет размещать код на GitHub, Google Code и BitBucket.
Мы сделали краткий обзор систем контроля версий SVN и Git. Изучить детально и проработать эти системы на практике можно на наших курсах «L3-DevOps»!