Удалить указанный c коммит локально - PullRequest
0 голосов
/ 14 января 2020

Я новичок ie с Git.
У меня есть следующие коммиты, которые можно просмотреть ниже: enter image description here


Я хотел бы удалить ТОЛЬКО первый коммит в списке, так что конечный результат выглядит так: enter image description here

В поисках возможного решения, которое я пробовал:
Удалить указанный c коммит, зная идентификатор коммита
Удалить коммиты из ветви в Git
Но с небольшим успехом, потому что Я считаю, что они не выполняют то, что я должен сделать.

Я не понимаю, почему так редко можно найти что-то, что кажется мне таким тривиальным.

Ответы [ 2 ]

1 голос
/ 14 января 2020

Вы могли бы попытаться выполнить здесь полный сброс, но лучший общий ответ был бы на git revert, который фиксирует:

# from your branch
git revert 1ce826c3

Причина, по которой возврат, как правило, предпочтительнее, чем Hard Reset - то, что первый вариант безопасен, даже если вы уже передали свою ветку на удаленный компьютер. В этом случае, если какой-либо другой пользователь выполнил операцию до того, как вы произвели полный сброс и принудительное нажатие, он может столкнуться с серьезными проблемами. Но возврат просто добавляет новый коммит поверх ветки, и поэтому с этой точки зрения это безопасно.

0 голосов
/ 14 января 2020

Вы можете reset вернуться к коммиту до этого

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