Вы почти ответили на свой вопрос: да, вы можете объединить одну ветку в несколько других ветвей.
Итак, вы хотите создать ветку только для этой функции / исправления (общее название - «тема»), начиная с общего предка всех веток, в который вы хотите ее объединить. Выполняйте свою работу, закрепляйте ее, а затем объединяйте во все это.
# say version 1.2.3 is a common ancestor, and it's tagged
git checkout -b bugfix v1.2.3
# do some stuff
git add ...
git commit
git checkout master
git merge bugfix
git checkout dev
git merge bugfix
...
Ключевая часть здесь - , убедитесь, что ваша ветвь начинается с общего предка . Если вы этого не сделаете, то и в конечном итоге вы объедините кусочки других вещей.
Если по какой-то причине трудно найти хорошего общего предка, вы можете вернуться к комплектации вишней . По сути, это копирует коммит из одного места в другое. Однако лучше избегать этого, когда это возможно, поскольку это означает, что в истории вы получите две копии коммита.