Непрерывная Интеграция - Когда Избавиться От '-Snapshot'

  • Автор темы Seyt
  • Обновлено
  • 20, Oct 2024
  • #1
;

Я работаю над рабочим процессом Git (не git-flow) для проекта Java, который использует Maven и Artifactory для хранения артефактов. В ветках development и Feature/* номер версии содержит «-SNAPSHOT». Нежелательно иметь ветки Release/* или Master с '-SNAPSHOT', поэтому я пытаюсь выяснить, когда (и как) от этого избавиться.

Я придумал частичный рабочий процесс, как показано ниже, но он не позволяет удалить «SNAPSHOT»:

 
 
                 v1.0-snap    v1.0-snap
feature/a       * ---------> *

^            |

|            |

|            v             v1.1-snap
develop         *            * v1.0-snap  *

v1.0-snap    |           /

|          /

v         /
release/1.1        v1.0-snap * -----> * ----- >* v1.1

v1.1-snap    \

\

\
master                                             *

v1.1
 

Я придумал два варианта, но оба могут быть неправильными.

Вариант 1

v1.0-snap v1.0-snap feature/a * ---------> * ^ | | | | v v1.1-snap develop * * v1.0-snap * v1.0-snap | / | / v / release/1.1 v1.0-snap * -----> * v1.1-snap \ \ \ master * --------> * v1.1-snap v1.1

Вариант 2

v1.0-snap v1.0-snap feature/a * ---------> * ^ | | | | v develop * * v1.0-snap v1.0-snap | | v release/1.1 v1.0-snap * -----> * v1.1-snap

Хотя оба варианта кажутся мне странными.

Есть ли лучшая практика для такого рода потока?

#непрерывная интеграция #git #maven

Seyt


Рег
15 Mar, 2011

Тем
67

Постов
186

Баллов
581
  • 25, Oct 2024
  • #2

У меня похожая установка.

Для foobar-18.08-326.war and 18.08-326 , я использую что-то вроде master in my pom. When we're ready to start release hardening, I'll cut a release branch ( 18.09-SNAPSHOT ) и измените версию в pom/s на 18.08 .

Я также отправлю версию в разработку, чтобы release/18.08 , for example.

Оттуда исправьте ошибки и завершите выпуск, объедините его в 18.08-SNAPSHOT when appropriate.

Мы еще не совсем CI/CD, но проблема, с которой я столкнулся при выпуске сборок, заключалась в том, что мне все еще нужны были уникальные сборки в Artifactory. Итак, во время сборки (для ветвей выпуска) Дженкинс изменит версию в pom на что-то вроде develop (326 being build number). It won't commit this change, but the artefact that gets built and pushed to Artifactory will be unique ( feature/* )

 

Galina.universal


Рег
01 Dec, 2019

Тем
86

Постов
182

Баллов
652
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно