JUNIOR-BLOG

Для всех кто увлекается программированием

Как откатить merge request

Чтобы откатить слияние (merge) в Git, вы можете использовать команду git revert для создания нового коммита, который отменяет изменения, внесенные слиянием.

Используя команду git log для просмотра истории коммитов и нахождения хеша (SHA) коммита слияния, который вы хотите откатить.

В выводе находим необходимый МР. Пример вывода может выглядеть вот так:

commit 8e0febacb2acb15aa615c7c5564e2e9ab1595be3 (HEAD -> main, origin/main)
Merge: 6e314de 8aac892
Author: Sergey Golubev <113093924+skyndfly@users.noreply.github.com>
Date:   Mon Sep 16 15:23:45 2024 +0300
[main d57db25] Revert "Merge pull request #61 from skyndfly/#54"
 14 files changed, 59 insertions(+), 125 deletions(-)
 delete mode 100644 database/migrations/2024_08_28_205956_add_user_to_articles_table.php

Здесь нас интересует строчка 8e0febacb2acb15aa615c7c5564e2e9ab1595be3

Далее нам необходимо выполнить комнаду git revert -m 1 8e0febacb2acb15aa615c7c5564e2e9ab1595be3

Здесь -m 1 указывает, что вы хотите сохранить изменения из первой родительской ветки (обычно это ветка, в которую вы сливались).

После этого откроется редактор nano, в котором необходимо ввести сообщение коммита. После чего прожать Ctrl + O и Ctrl + X чтобы сохранить и выйти из редактора nano.

 

Далее можно уже через IDE сделать пуш ветки.

 

Если в процессе отката возникнут конфликты, Git сообщит вам об этом. Вам нужно будет разрешить конфликты вручную, а затем выполнить:

git add .
git commit

 

 

Комментарии