Как изменить корневую ветку, которая была разветвлена ​​от - PullRequest
0 голосов
/ 09 октября 2018

Допустим, у меня есть ветки master и develop.develop имеет код, которого нет master.Я разветвляюсь от develop и создаю feature, пишу какой-то новый код, объединяю его в develop (чтобы поставить его на стадии подготовки и протестировать).Затем я решаю, что хочу объединить feature в master, но включает в себя все, начиная с develop, которое не находится в master, и которое я не хочу сейчас объединять.Как я могу сделать так, чтобы feature имел код, который я добавил, как если бы он был разветвлен от master, а не develop?Я немного читал о rebase и cherry-pick, но я могу видеть любые примеры точно такие же, как у меня (где feature уже объединен в develop)

Ответы [ 2 ]

0 голосов
/ 09 октября 2018

Получить список коммитов из ветви develop.

  1. git checkout develop
  2. git log и получите коммит hash-number.

Образец коммита hash-number: commit 0ef6a22f4a4bd1dc4561dab413a9ff09780d18c0

После получения хэша (ов) коммита.Мастер проверки и вишня выбирают коммиты от develop до master по одному.Предпочитаю переходить от старых коммитов к новым, чтобы избежать новых конфликтов слияния.

  1. git checkout master
  2. git cherry-pick hash-number
0 голосов
/ 09 октября 2018

Я бы сказал

git rebase --onto master develop feature

, а затем слил это в мастер

git merge master

, если вам нужно, вы можете создать промежуточные имена ветвей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...