M.A.X.    Вы вошли как гость
Российский Клуб игроков M.A.X.
 
[Новости]   [Новичку]   [Энциклопедия]   [Документы]   [Файлы]   [Игроки]   [Архивы]   [Архив форума]  
[Новый сайт]   [M.A.X. Gold]   [Партии]  

 
 
 
Архив форума  МаксГолд
[Основной форум] [Голосования] [МаксГолд] [Off-Topic]
 


Черновик правил работы с системой контроля версий на проекте M.A.X. Gold (SVN Rules)  -  Hruks,  31.05.2010  8:20:36

Описание
Проект M.A.X. Gold использует систему контроля версий SVN.
Для удобства использования рекомендуется использовать TortoiseSVN(http://tortoisesvn.net/downloads)
Проект расположен по адресу svn://maxgold.rumaxclub.ru:46022/maxgold
Координация работ происходит на форуме: http://www.rumaxclub.ru/forum_2.htm
Вопросы, связанные с SVN обсуждаются в ветке: http://www.rumaxclub.ru/forum_2/lv_0/post_7121.htm

Роли на проекте
Эксперт. Просмотр, исправление и интеграция изменений, вносимых в проект с веток разработчиков.
Может интегрировать изменения в папку trunk. Ответственен за все исправления в подконтрольном проекте.
Разработчик. Создание рабочих веток и работа с проектом на рабочих ветках.
Администратор. Выпускает релизы. Создаёт новых пользователей и назначает права.

Назначенные роли
Экспертом для компонента Редактор Юнитов (/trunk/src-editor) является Hruks.
Экспертом для остальных компонентов (/trunk) за исключением Редактора Юнитов является Artlaw.
Администратором является Artlaw.

Структура
Проект расположен по адресу svn://maxgold.rumaxclub.ru:46022/maxgold
В корне проекта есть 2 папки branches и trunk.
Папка trunk
Предназначена для хранения основного релиза. Содержит только одобренные экспертом изменения. Изменения вносятся Экспертами компонентов в подконтрольные проекты.
Используется как источник для создания веток для работы над новой проблемой разработчиками.
Папка branches
Предназначена для хранения веток разработчиков.
Ветки отращиваются от trunk, либо в случае долгой интеграции в trunk и сложных зависимостей, от другой ветки в branches.
Ветки, создаются только в этой папке. Следует удалять ветки после интеграции в trunk. Обычно этим занимается автор ветки, то есть тот, кто её создал.

Работа над проектом
Порядок работа зависит от выполняемой роли на проекте.
Для работы необходимо иметь хотя бы одну копию рабочего проекта на локальной машине. Переключение между версиями и ветками происходит по мере необходимости.
Исправление ошибки или реализация новой функциональности Экспертом.
Эксперт может вносить изменения непосредственно в папке, подконтрольного проекта. В случае больших, сложных или длительных исправлений рекомендуется создать ветку и производить работу в ней, с последующей интеграцией в trunk.
Исправление ошибки или реализация новой функциональности Разработчиком.
Разработчик должен создать рабочую ветку, отрастив её от trunk (или другой рабочей ветки), и выполнить изменения в ней. По окончанию производится запрос на интеграцию Разработчиком к Эксперту.
Внесение изменений
Любое внесение изменений (кроме создания и удаления веток) должно сопровождаться записью для истории изменений. Запись должна кратко содержать описание вносимых изменений и/или их цель. Полезно указать ссылку на запрос изменений, если изменения делались по запросу (багтрекер).
Запрос на интеграцию Разработчиком к Эксперту.
По окончанию разработки на рабочей ветке Разработчик производит тестирование своих изменений, проверяют дельту, вносит необходимые исправления по результатам тестирования и инспекции и ещё раз проверяет работоспособность после исправлений.
После проверки Разработчик вносит изменений на рабочую ветку. Вносятся только те изменения, которые необходимы для решения задач. Побочные изменения или изменения, необходимые для проверки работоспособности и /или отладки вычищаются перед подачей или не подаются, если расположены в отдельных файлах.
Разработчик подаёт запрос на интеграцию своих изменений к Эксперту соответствующего компонента.
Делать это рекомендуется на форуме в ветке, посвящённой исправлениям (запрос новой функциональности или отчёт о найденной проблеме). Достаточно ответить на тему и в ответе указать, что проблема частично или полностью (по умолчанию) решена и указать полный путь к ветке с изменениями. Допускается указание относительного пути, начиная с папки /branches
Интеграция изменений Экспертом.
Эксперт производит инспекцию изменений, выполненных разработчиком, тестирует новую/исправленную функциональность. В случае несогласия с автором изменений, либо вносит корректировки, либо отправляет на доработку (через форум). Если изменения прошли проверку, то Эксперт выполняет интеграцию изменений в trunk. При необходимости производится выпуск релиза.
Выпуск релиза.
Выпуск релиза производится Администратором при достаточном количестве изменений на проекте, либо по запросу, либо при интеграции горячих фиксов, которые срочно ожидают.
Релиз выкладывается в доступном месте, делается публикация на форуме (http://www.rumaxclub.ru/forum_2/lv_0/post_6394.htm). По истории внесения изменний определяются список запросов на внесение изменений на форуме, все исправленные помечаются для тестирования и остаются в папке с предыдущим релизом. Все неисправленные переносятся в новый релиз.

Обратная связь
По всем вопросам обращаться по email к Hruks(http://www.rumaxclub.ru/vis.asp?mcod=23) либо к Artlaw (http://www.rumaxclub.ru/vis.asp?mcod=77) либо на форуме (http://www.rumaxclub.ru/forum_2/lv_0/post_7121.htm)

Версия
05.03.2010 Hruks

    ответы :