Git / Завершить выпуск / Исключить файл (ы)
Наш проект разделен на 4 различных Git-проекта (иерархия), где конечный проект является частью клиента.
Для выпуска новой версии мы используем (SourceTree) и GitFlow-Feature. Таким образом, создается новая ветвь из последней ветки dev, и по окончании выпуска она будет объединена с dev и заполнена в master-branch.
Для облегчения разработки мы использовали фиксированную версию ("dev" вместо xyz) для всех проектов, работая над веткой разработки и устанавливая актуальные версии, когда мы заполняем ветку релиз-веткой.
Итак, мы хотим избежать слияния pom-файла с dev-веткой. (Версии, определенные в pom, должны придерживаться dev, а все остальные (окончательные) изменения должны быть объединены обратно в dev.)
Есть ли способ достичь этого, не изобретая велосипед?
Итак, по окончании выпуска:
- внесите все изменения в основную ветку
- объединить изменения обратно в ветку разработки EXCEPT pom файл?
1 ответ
Внесите изменения в версию в файле pom своим собственным коммитом в ветке релиза и сразу же "подделайте", объедините его с веткой разработки (merge --strategy=ours
).
Как только эта фиксация слилась (даже с фальшивым слиянием) обратно в разработку, ее изменение не будет включено в будущие слияния обратно в разработку (пока файл pom снова не будет изменен).
Обратите внимание, что если у вас есть какие-либо коммиты в ветке релиза до коммита с изменением версии, убедитесь, что вы сначала "реально" слили их, а затем фальшиво слили коммит с изменением версии (а затем реальное слияние будущих реальных изменений, а затем фальсифицировали будущие изменения версии, промыть-и-повторить...).