5.5.1 Работа с системой контроля версий
Работа с системой контроля версий начинается с создания репозитория.
Репозиторий – это специализированная база данных, в которой хранятся файлы
вашего проекта, вносимые изменения, информация о создании и удалении
файлов, информация о пользователях и т.п. В основном, репозиторий рассчитан
на хранение обычной текстовой информации, хотя можно хранить и двоичные
файлы (к примеру, исполняемые, документацию в формате PDF или DOC).
Почему не использовать обычную СУБД, к примеру, такую как MySQL или
Oracle? Ответ прост: проблема в эффективности. Репозиторий системы
контроля версий специально ориентирован на хранение текстовых документов
и изменений в них. Хранение таких данных (весьма большого объема) в
обычной базе данных вызовет неэффективное использование дискового
пространства и замедление работы. Обычно в репозитории хранится разница
между текущей и предыдущей версией файла. Для того, чтобы посмотреть на
то, как может выглядеть внутренности репозитория, изучите работу программы
diff
.
После создания репозитория можно добавлять и стирать в нем файлы,
получать содержимое репозитория на свою машину, проверять обновления и
отправлять изменения обратно. Типичный цикл работы на примере Subversion
может выглядеть примерно так:
svn co http://194.85.162.173/repos/ul3
Эта строка позволяет забрать с сервера 194.85.162.173 из репозитория
repos/ul3 ваш проект. Вы можете отредактировать нужные вам файлы. Для того,
чтобы убедиться, что ваши товарищи не добавили в проект чего-то нового
можно вызвать команду:
svn update
Исполнение этой команды приводит к тому, что вы забираете из
репозитория все новые файлы, появившиеся там после того, как вы скачали
версию себе на машину. Если вы умудрились редактировать с кем-то один и тот
же файл, система контроля версий должна предупредить вас о конфликте.
244
Разрешение конфликта делается в соответствии с документацией на
используемый вами инструмент.
Для записи изменений, сделанных вами в репозиторий воспользуйтесь
следующей командой:
svn commit
Данная команда отправит в репозиторий только те файлы, которые вы
изменили. Если файлы были изменены кем-то еще, вам будет сообщено о
конфликте. В процессе запуска команды будет вызван текстовый редактор, и
вам будет предложено описать сделанное изменение. Пожалуйста, не ленитесь
писать по существу. Эти записи потом вам сильно помогут разобраться в
проекте, когда пройдет существенное время, и вы все основательно позабудете.
О более сложных вариантах использования систем контроля версий я
рекомендую читать самостоятельно в специальной литературе [41].
245
Достарыңызбен бөлісу: |