[JAM 2.0] SVC (Yanochkin Alexei)

Preview:

Citation preview

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

Яночкин Алексей

вторник, 22 ноября 2011 г.

Общие сведения

вторник, 22 ноября 2011 г.

Что такое и зачем нужно?

вторник, 22 ноября 2011 г.

Системы управления версиями

Программное обеспечение для облегчения с изменяющейся информацией. Система управления версиями позволяет хранить несколько версий одного и того же документа, при необходимости, возвращаться к более ранним версиями, определять, кто и когда сделал то или иное изменение и многое другое

вторник, 22 ноября 2011 г.

Непонятные слова?

вторник, 22 ноября 2011 г.

Branch

Checkin, Commit, submit

Checkout

Merge

Repository

Revision

Conflict

Глоссарий

вторник, 22 ноября 2011 г.

Начало

Checkout

Создается локальная рабочая версия проекта

вторник, 22 ноября 2011 г.

ежедневный цикл

Обновление рабочей копии

Модификация проекта

Фиксация изменений

вторник, 22 ноября 2011 г.

Ветвлениявторник, 22 ноября 2011 г.

СлиянияМодификации файлов, создание каталогов

Для разных файлов слияние происходит автоматически

Для разных строк одного файла слияние происходит автоматически

Изменения в не текстовых файлов всегда конфликтуют

вторник, 22 ноября 2011 г.

Конфликты

Возникают при одновременном изменении одной и той же части проекта

Разрешаются разработчиком

Три варианта: базовый, локальный и серверный

вторник, 22 ноября 2011 г.

БлокировкиРазрешает работу с файлом только одному разработчику

Ранее все VCS работали с помощью блокировок

Отсутствие конфликтов

Работа с файлами, когда нет инструментов для слияния

вторник, 22 ноября 2011 г.

Блокировки: минусы

Мешают продуктивной работе

Частота конфликтов и сложность их решений

Административные проблемы

вторник, 22 ноября 2011 г.

Как это работает?

вторник, 22 ноября 2011 г.

Архитектура

вторник, 22 ноября 2011 г.

Централизованный репозиторий

вторник, 22 ноября 2011 г.

Распределенный репозиторий

вторник, 22 ноября 2011 г.

вторник, 22 ноября 2011 г.

Метод изменений

вторник, 22 ноября 2011 г.

Метод «снимков»

вторник, 22 ноября 2011 г.

С помощью чего работать?

вторник, 22 ноября 2011 г.

0 12,5 25 37,5 50

%

Subversion(Svn)CVSДругая бесплатная центролизованная VCSДругая коммерческая централизованная VCSGitMercurialBazaarДругая бесплатная распеределенная VCSДругая коммерческая распеределеная VCS

вторник, 22 ноября 2011 г.

Subversion

Централизованный репозиторий

Каждый работает с локальной копией проекта

Необходимо подключение к серверу для фиксации изменений

вторник, 22 ноября 2011 г.

GitДецентрализованный репозиторий

Каждый работает с локальным репозиторием

Фиксация изменений для рабочей копии и для репозитория в целом

Возможность передавать изменения по почте

вторник, 22 ноября 2011 г.

Subversion vs Git

вторник, 22 ноября 2011 г.

Subversion

Централизованная система

Позволяет разделить проекты с общими модулями

Сквозная нумерация ревизий

Позволяет держать в рабочей копии часть репозитория

вторник, 22 ноября 2011 г.

Git

Распределенная система

Позволяет получать изменения от сторонних разработчиков по E-mail

Для фиксации в локальный репозиторий не нужен доступ к центральному

вторник, 22 ноября 2011 г.

Спасибо за внимание

вторник, 22 ноября 2011 г.

Вопросы?

вторник, 22 ноября 2011 г.