Есть ли способ объединить коммит с предыдущей точкой на master в git? - PullRequest
2 голосов
/ 05 марта 2019

Извините, если это очень простой вопрос, но моя компания недавно переключилась на git, и я пытаюсь набрать скорость.Мне трудно найти ответ с поиском.

Вот сценарий:

У вас есть версия 1 вашего продукта на master.Позже вы выпускаете версию 2 и объединяете эту версию с мастером.Однако в версии 1 сообщается об ошибке, и некоторые пользователи не хотят переходить на версию 2. Они просто хотят продолжать использовать версию 1, но хотят, чтобы ошибка была исправлена ​​в версии 1.1.

Есть ли способ проверить контрольную точку версии 1 на главном сервере, сделать исправление ошибки, проверить это обратно на главном компьютере, а затем переслать исправление до версии 2 на главном компьютере?Это было бы полезно для сохранения истории, вместо того, чтобы просто создавать отдельную ветку версии 1, висящую там, и черри выбирая исправление для мастера.

Редактировать: Это было помечено как дубликат, и я былсвязан с вопросом о том, как оформить предыдущие коммиты.Это не мой вопрос.Мой вопрос заключается в том, как выполнить экстренное исправление предыдущей регистрации, а затем перенаправить ее в последующие проверки, чтобы сохранить историю.

1 Ответ

3 голосов
/ 05 марта 2019

Возьмите два: применение коммита к более раннему состоянию, а также мастер HEAD.

Сначала проверьте предыдущее состояние и создайте ветвь.

git checkout <commit hash>
git checkout -b <new-branch-name>

ИЛИ проверьте исходную ветвь функции.

git checkout <merged-branch-name>

Затем внесите изменения.Нажмите на ветку и поделитесь ею со своими клиентами, используя эту ветку.

Теперь, черри, выберите ваш коммит изменений на мастере:

git checkout master
git cherry-pick <commit hash>

Как и при любом слиянии, это может привести к конфликтам.Вам нужно разобраться с ними как обычно.

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