Используя gitflow, при создании release-1.0.0ветви и объединении ее с обеими ветвями masterи developобеими ветвями будет отсутствовать коммит:
masterне будет коммит, гдеrelease-1.0.0было слияние сdevelopdevelopне будет коммит, гдеrelease-1.0.0было слияние сmaster
Вместо этого после hotfix-1.0.1создания и слияния с ним master, когда слияния с develop, коммиты для слияния будут включать в себя предыдущий коммит, с которым release-1.0.0был слит master; так это будет выглядеть так:
User 'john doe' is trying to merge the following commits into 'develop' from 'hotfix-1.1.1'.
* merge release-1.0.0 to master
* merge release-1.1.0 to master
* Fix shopping cart critical bug
Если это звучит запутанно, вы можете легко заметить, что все, что вы видите develop, обычно отстают на пару коммитов master(хотя разработка, теоретически, должна быть только впереди, поскольку это основная ветвь. Эти коммиты являются слиянием с release-x.x.xв master).
Как с этим обращаться, чтобы поддерживать чистую историю?