LOGO Управление версиями ПО Работу выполнил Студент группы Брюсов Роман
LOGO Содержание Введение 1 Словарь 2 Централизованные системы 3 Распределённые системы 4 5 Примеры
LOGO Введение Система управления версиями (от англ. Version Control System, VCS или Revision Control System) программное обеспечение для облегчения работы с изменяющейся информацией SCM (Software Configuration Management) - это средство и соответствующий процесс, используемый для поддержки исходного кода и его изменения с течением времени назад
LOGO Словарь Репозиторий (repository) Выгрузка (check-out) Изменения(commit) Версия файла (revision) Ветка (branch) назад
LOGO Централизованные системы Большинство систем управления версиями используют централизованную модель, когда имеется единое хранилище документов, управляемое специальным сервером, который и выполняет большую часть функций по управлению версиями назад
LOGO Распределённые системы Так же известны как Distributed Version Control System, DVCS. Такие системы используют распределённую модель вместо традиционной клиент- серверной назад
LOGO Примеры Git Git SCM был разработан Линусом Торвальдом как прямая замена для Bitkeeper SCM. Это очень простой, но это стоящий работы децентрализованной SCM, основанной на методе "набора изменений" и используется как SCM для ядра Linux Листинг 1. Примеры команд для Git Получить Git репозиторий (впервые) git clone \ git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git Обновить Git репозиторий из определенного вышестоящего Git репозитория git pull Выгрузить из Git репозитория в локально работающий репозиторий git checkout Добавить изменения в локальный Git репозиторий git commit Внести изменения в вышестоящий репозиторий git push
LOGO Примеры Subversion Subversion (SVN) была разработана как прямая замена CVS, но без свойственных CVS заранее определенных выпусков. Как и CVS, Subversion - централизованное решение и использование модели "моментального снимка". Листинг. Примеры команд для Subversion Создать новый репозиторий svnadmin create /home/user/new_repository Выгрузить блок из корневого репозитория svn checkout file:///server/svn/existing_repository new_repository Внести изменения из локального блока в корневой репозиторий svn commit Обновить локальный блок из корневого репозитория svn update Показать изменения, сделанные в локальном блоке svn diff назад
LOGO