Укороченного варианта вопроса
Учитывая следующую структуру филиала:Merge филиала филиала в мастер без слияния средней ветви
*----*-----*
master \
*--*---*------*-*---*
A \
*----*
hotfix
Можно ли объединить только изменений, внесенные в hotfix
в master
без с пометкой любая изменение сделанное в Feature A
?
Во время разработки Feature A
, файл_1 был изменен. Во время hotfix
, file_1 и file_2 были изменены.
Я хочу, чтобы изменения по строкам, введенные в hotfix
, были объединены в master
. То, что я не хочу, это точный файл, который находится в hotfix
, чтобы перезаписать файл в master
, потому что тогда он будет содержать Feature A
изменений.
Backstory
Я работаю на нашем сервере разработки. У меня есть ветвь мастера, которая (почти) является точной копией живого сервера. Когда я хочу реализовать новые функции, я создаю ветку от мастера, вношу изменения и загружаю на сервер разработки. Как только я доволен изменениями, я объединю их в мастер и перетаскиваю изменения на живой сервер.
Я работаю над Feature A
, который занимает очень много времени, чтобы реализовать и затрагивает многие файлы. Перед заполнением Feature A
Я хочу работать на hotfix
. Я могу проверить master
и оттуда оттуда для моего исправления, однако все файлы на сервере разработки в настоящее время содержат код для Feature A
. Я не хочу, чтобы Feature A
прекратил работать на dev, пока я работаю на hotfix
. Таким образом, я разветвил Feature A
.
Я закончил мой hotfix
, и я хочу объединить его в мастер. Однако я не хочу любойFeature A
код, чтобы сделать его master
.
Предоставление конфликтов слияния, возможно ли это?
Должен ли я быть на определенной ветке, когда запускаю 'git rebase -onto master A hotfix'? – MrMisterMan
Нет. Проверьте 'git help rebase'. Вы увидите, что последний аргумент - это ветка для переадресации. –
Спасибо этой работе отлично. – MrMisterMan