Правильный способ настроить релизы в Launchpad?
Я работаю в Launchpad всего около 3 месяцев, и у меня все еще не получается разобраться в терминологии.
Я создал проект с одной веткой - стволом. Я посвятил несколько раз этой отрасли.
Я создал серию под названием "0.1" и хочу загрузить ее. В прошлый раз, когда я сделал это, мне пришлось создать веху или что-то в этом роде. Что бы это ни было, я не понимаю.
Может кто-нибудь объяснить, пожалуйста:
- серии
- релизы
- вехи
и цель каждого?
2 ответа
Я думаю, что Launchpad использует эти слова, поскольку они более "универсальны" - их можно использовать для различных стилей разработки, не вынуждая проект управлять исходным кодом, разрабатывать и выпускать определенным образом.
Я вижу в основном два способа разработки проекта на Launchpad:
Развитие вашего проекта нелинейно (не уверен, что это правильное слово). Как правило, это верно, если для вас важно поддерживать более одной версии одновременно при разработке в нестабильной ветке / разработке. (Подумайте о разработке двух версий параллельно)
Например, GNOME имеет версии
x.y.zсо страннымyподразумевая разработку серии и дажеyподразумевая стабильную серию. Релизы GNOME2.30как стабильный для использования в мире. После релиза разработчики начинают работать над2.31.xкоторый нестабилен Если они найдут какую-либо важную ошибку, которую они хотели бы исправить для пользователей, работающих2.30не предоставляя огромное количество новых функций, они исправляют эту ошибку в2.30и выпустить2.30.1, Если вы знакомы сbzrВы должны быть в состоянии понять это с точки зрения2.31разрабатывается на стволе, в то время как2.30ветвь ствола (разветвленная, когда2.29стал стабильным и был выпущен как2.30), где сделаны только исправления ошибок.В этом случае вы должны сделать одну серию для каждого
2.29,2.30,2.31и т. д. и одинtrunkсерии.2.29а также2.30поделится тем жеbzrфилиал (с2.30является2.29после полировки).2.31а такжеtrunkподелится тем жеbzrветка. Когда вы отпустите2.32тогда ветка ствола и назовите эту ветку2.32(это будетbzrветвь для обоих2.31а также2.32серии).Примером вехи в этом случае является
2.30.2(в2.30серии). Веха отличается от выпуска тем, что веха является будущим выпуском, и как только эта версия выпущена, веха становится выпуском. Вот почему имеет смысл нацелить ошибку на этап (будущее), и вы можете сделать так, чтобы ошибка влияла только на (скажем) две из пяти серий, потому что она затрагивает только две из них и должна быть исправлена в соответствующих ветвях (вероятно, текущий стабильный выпуск и багажник)Развитие вашего проекта является линейным. Это означает, что вы выпустите версию
1.1чтобы все могли использовать, продолжайте разрабатывать функции и исправлять ошибки, пока не будете готовы к1.2или же2.0(или как угодно). Затем вы выпускаете последний доступный код. В этом случае вы не разрабатываете разные версии параллельно, как показано на диаграмме серий на панели запуска).В этом случае у вас есть только одна серия, одна базарная ветвь (обе называются
trunkпо-видимому) и все ваши вехи и релизы находятся в этой серии (будь то0.1,1.0,1.1или же2.0)
Последнее проще. Первый вариант более уместен, когда вам нужно предоставить исправления ошибок, когда вы работаете над большими изменениями для более поздней версии (более необходимо, когда это не сольный проект).
НТН
Я согласен, что это довольно запутанно и не особенно хорошо задокументировано. Это мое понимание
Серия - это в основном набор релизов. Обычно у вас есть основная ветка разработки, связанная с серией, называемой "ствол" или чем-то подобным. Вы можете иметь другие серии, такие как "стабильный" со своими собственными наборами релизов. Смущает, что ряды могут делиться или иметь отдельные ветки bzr - я не уверен, что лучше всего делать в этом отношении.
В серии у вас есть вехи. Кажется, вы можете установить только одну веху за раз - вам нужно отпустить первую веху, чтобы установить вторую. Вехи, вероятно, будут вашими номерами версий, например. 0,1, 0,2.
Когда вы нажмете "Выпустить сейчас", чтобы выпустить этап, вы сможете загружать файлы для загрузки, соответствующие этому выпуску.
Основные моменты к этому:
- Филиалы - это совершенно отдельные линии развития.
- Серии - это параллельные наборы выпусков.
- Вехи - это будущие выпуски, работающие линейно в рамках одной серии.
- Релизы - это последние вехи, с которыми могут быть связаны загрузки.
(извините за круговое определение здесь, но вот как это работает).