Я работаю с командой разработчиков среднего размера, которые работают над одним продуктом. Разработчики пишут код для обращения к биту с функцией или ошибкой, а затем проверяют его в нашей основной ветке развития (в Subversion). Как только билет был протестирован и проверен там людьми QA, я объединил его в багажник. Обычно я делаю это вручную, так как многие билеты охватывают несколько версий, которые не всегда являются последовательными и могут включать исправления для нескольких билетов одновременно.Как я могу управлять слиянием обновлений от нескольких разработчиков?
Одна вещь, которая, я уверен, поможет, поощряет разработчиков только проверять один билет за ревизию. Мы используем Jira для отслеживания наших задач, поэтому в каждой ревизии Subversion должен быть идентификатор проблемы Jira в журнале - когда я скрепляю код, я ищу варианты, включающие проблему, с которой я объединяюсь.
Есть ли там другими способами я мог бы справиться с этим лучше? Другие команды отходят от ствола для каждого билета и выпуска? Как я уже сказал, у нас есть одна основная отрасль развития, по крайней мере частично потому, что мы быстро создаем много новых функций, и я думаю, что мы сможем быстро завершить работу с десятками филиалов, если мы сделаем по одному для каждого билета.
Интересно. Быстрый вопрос. Всегда ли вы создаете ветку для каждой Джиры или есть ситуации, когда вы фиксируете набор билетов Джиры сразу в одной ветке? –
Вы можете исправить несколько ошибок/jira в одной ветке, но IDEAL UCM - это создание минимальных наборов изменений для каждого исправления. Предположим, вы работаете над ядром linux, и вы распространяете исправления. Что вы хотите предоставить конечным пользователям, один большой кусок исправлений, которые могут не относиться к ним (и, возможно, быть вредными), или небольшие целенаправленные хирургические исправления? Есть аргументы для обоих методов, но я являюсь большим сторонником объединения 1 JIRA - 1, где это возможно. С большими JIRA (как новые функции/улучшения) это может стать менее практичным. –