Существует проблема при создании выпуска с ветвями Git(концентратора)

#github #version #branch #conflict #semantic-release

Вопрос:

Мы обслуживаем Node.js политика приложений и операционных ветвей на GitHub, такая как:

  • main : База выпуска производственной среды
  • develop : База выпуска среды разработки (бета-версия)

В основном, мы пишем некоторый код для новой ветви из develop ветви и объединяем его в develop , а затем объединяем develop в main . В случаях исправления исправьте код в новой ветви из main , а затем объедините его в develop и main .

Выпуск обрабатывается семантическим выпуском и автоматически изменяет package.json файл и CHANGELOG.md файл в конвейере CI/CD.

Это означает, что семантический релиз фиксируется в целевой ветви выпуска, и файл изменяется.

Итак, у нас есть проблема в приведенном ниже случае:

  • Если в develop ветке произошли изменения, версия увеличивается как бета-версия.
  • Если в main ветке есть исправления, версия увеличивается.
  • При слиянии main в develop происходящий конфликт.

Потому что файлы изменились и зафиксировали их одновременно.
Этот случай пытается отразить последнюю версию в develop ветке.
Мы ожидаем того же явления при слиянии develop в main .

Мы чувствуем трудности с устранением конфликта и беспокоимся о неправильном изменении, когда произошел этот случай.

Должны ли мы НЕ СЛИВАТЬ то main в то develop ?

Мы хотим знать, как вы строите свой конвейер выпуска.

Спасибо.