Как заставить измененную основную историю отображать ветви, основанные на старой истории? - PullRequest
0 голосов
/ 16 января 2019

Мой коллега изменил историю наших master, а мой feature-branch основан на старой истории master с. Простая перебазировка не изменила историю моих веток на новую (измененную) историю.

Вишня выбирает мой единственный вариант или есть более простой способ решить эту проблему? Создание новой ветки испортило бы нашу историю комментариев на Gitlab о запросе на слияние. Также не уверен, что произойдет с автоматическим слиянием Gitlabs с разными историями.

Желаемым результатом была бы аналогичная история на master и feature-branch с feature-branch с моими коммитами поверх него.

1 Ответ

0 голосов
/ 16 января 2019

Обновите вашу локальную версию мастера (это будет принудительное обновление (помеченное знаком + в выходных данных извлечения), поскольку истории различаются)

git checkout master
git pull

Тогда вы сможете выбрать вишню илиперебазировать ваши коммиты поверх недавно обновленного мастера.Вот с помощью cherry-pick:

git checkout feature-branch
git log
# in git log output, spot the commit SHAs of the commits you need ans store them

git cherry-pick <commitSHA> <otherCommitSHA>

(Могут возникнуть конфликты. Если это так, разрешите их как обычно)

Теперь ваш feature-branch может быть объединен обратно в master (возможно, черезпиар) без истории проблем.

...