Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемkriconf.ru
1 Организация репозитория Subversion при работе с несколькими проектами Загурский Сергей
2 КРИ 2005, Москва. © MiST-land South. Несколько проектов одновременно Несколько разных проектов одновременно Проект + аддон/мод/патч Проект + продолжение проекта
3 КРИ 2005, Москва. © MiST-land South. Проблемы при разработке нескольких проектов Для удешевления разработки есть общий на несколько проектов код Синхронизация Взаимное влияние проектов через общий код Багфиксы в одном проекте могут "сломать" другой Процесс внедрения новых версий внешних библиотек может быть заторможен из-за того, что библиотека используется в нескольких проектах
4 КРИ 2005, Москва. © MiST-land South. С каким кодом работаем? Код проекта Код, пишущийся по конкретный проект Как правило используется еще и для аддона или следующего проекта из линейки Общий код для нескольких проектов - шареный код Внешние библиотеки
5 КРИ 2005, Москва. © MiST-land South. Варианты организации кода Внешние и общие библиотеки отдельно от кода проекта Внешние и общие библиотеки вместе с кодом проекта
6 КРИ 2005, Москва. © MiST-land South. Внешние и общие библиотеки отдельно от кода проекта Репозиторий Внешние библиотеки Общие библиотеки Проект1 Проект2 Рабочая копия C:\external C:\shared C:\project1 C:\project2
7 КРИ 2005, Москва. © MiST-land South. Внешние и общие библиотеки вместе с кодом проекта Репозиторий Внешние библиотеки Общие библиотеки Проект1 Проект2 Рабочая копия C:\project2\external C:\project2\shared C:\project2 C:\project1\external C:\project1\shared C:\project1
8 КРИ 2005, Москва. © MiST-land South. Почему Subversion? Надежность Бесплатные бранчи Крайне желательны, т. к. для внешних и общих библиотек делается бранч в каждом проекте Простые и очевидные принципы работы Наличие удобных клиентов Простота развертывания Умение обрабатывать бинарные файлы
9 КРИ 2005, Москва. © MiST-land South. Схема репозитория \repo \external \shared \project1 \project2 \personal
10 КРИ 2005, Москва. © MiST-land South. Схема репозитория (2) \repo\external \stlport \current \5.0.0rc2 \4.6.2 \4.6.0 \dxsdk \current \feb_2005 \psdk \meqon \oggvorbis \boost
11 КРИ 2005, Москва. © MiST-land South. Схема репозитория (3) \repo\shared \mesh \trunk \tags \material \trunk \tags \sound \physics
12 КРИ 2005, Москва. © MiST-land South. Схема репозитория (4) \repo\project1 \trunk \src \external boost stlport psdk dxsdk \shared mesh material \project1 \branches \tags
13 КРИ 2005, Москва. © MiST-land South. Схема репозитория (5) \repo\personal \tutankhamun \ramesess \khufu \thutmose \amenhotep
14 КРИ 2005, Москва. © MiST-land South. Рабочий цикл рядового программиста update commit
15 КРИ 2005, Москва. © MiST-land South. Цикл обновления внешней или общей библиотеки Обновить копию, локальную для какого-либо проекта Слить изменения в основной каталог с библиотекой Слить изменения из основного каталога в каждый проект, где это требуется Таким образом, изменения в одном проекте "внезапно" не окажутся в другом
16 КРИ 2005, Москва. © MiST-land South. Дальнейшее развитие Приравниваем утилиты для сборки проекта к внешним библиотекам Выкладываем их в репозитории вместе с каждым проектом Настраиваем процесс сборки так, чтобы использовались утилиты, которые находятся вместе с проектом. Получаем систему сборки, не зависящую от того, что установлено на конкретной машине Версию смогут собрать даже не программисты
17 КРИ 2005, Москва. © MiST-land South. Линейки проектов Линейкой проектов назовем проекты, которые развиваются на одной базе исходников
18 КРИ 2005, Москва. © MiST-land South. Управление линейками проектов Организуем каждый проект так, чтобы можно было начать новый простым бранчем После такого бранча изменения в одном проекте можно легко перенести в другой Но этот перенос всегда под контролем!
19 КРИ 2005, Москва. © MiST-land South. ?
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.