GIT: перемещение изменений из одной ветви в другую - PullRequest
1 голос
/ 19 февраля 2020

У меня есть 2 ветви A и B. Я внес некоторые изменения в A и зафиксировал их. Затем я сделал больше изменений в A (по ошибке). Я подтолкнул их к B и совершил их.

Но теперь я вижу изменения от A (старый) и B (новый). Как мне отменить это?

Ответы [ 2 ]

1 голос
/ 19 февраля 2020

Если вы выдвинули коммиты, это означает, что это влияет на удаленную ветвь (а не только на вашу локальную ветвь)

Вам нужно будет выбрать коммит из B в A (при условии, что был сделан только один коммит). B по ошибке):

git switch A
git cherry-pick B
git switch B
git reset --hard B~
git push --force

Это переопределит историю B, что может быть проблематично c, если из удаленного репозитория работают несколько соавторов.
Другой вариант - вернуть B HEAD в добавьте дополнительный коммит, который отменяет содержимое последнего.

git switch B
git revert @
git push

Нет - здесь нужна сила.

0 голосов
/ 19 февраля 2020
git checkout <branchname>
git reset --hard <commitid>

Это восстанавливает все до исходного состояния. Если вы имели в виду что-то еще, пожалуйста, уточните.

С уважением, Zenima

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