Подтвердить что ты не робот

Git Не удалось вернуться

Я сделал несколько коммитов (commit1/2/3), я сменил рабочий каталог без stashing. Затем мне захотелось вернуться несколько месяцев назад. Таким образом, я git вернул commit1 commit2 commit3, но мне сказали, чтобы он зафиксировал мои изменения (commit4), поэтому я сделал это, а затем я снова сделал git revert commit1 commit2 commit3 commit4, но у меня появилось сообщение

ошибка: вишня-выбор или возврат уже идет: попробуйте "gitcherry-pick (--continue | --quit | --abort)"

Когда я запускаю ветвь git branch -va, HEAD указывает на фиксацию 3

Я не совсем понимаю, что происходит. Что мне теперь делать, чтобы все вернулось?

4b9b3361

Ответ 1

Лучше всего инициировать возврат с помощью чистого индекса и рабочего дерева.
В противном случае выполнение второго возврата (поверх нового фиксации) при предыдущем восстановлении приведет к этому сообщению об ошибке.

Поскольку вы все еще находитесь в commit 3, вы можете:

  • git cherry-pick --quit (который из этот поток, говорит, что он должен оставить только HEAD и уйти с пути.),
  • проверьте ваш индекс и рабочее дерево (git status),
  • выполните любую настройку, чтобы получить чистый статус (например, новый фиксатор),
  • а затем повторно введите git revert.

(вы можете увидеть другие варианты в разделе Откат к предыдущей команде - Github для MAC (возврат уже выполняется)")

Не забывайте git reset, если вы просто хотите забыть об этих трех коммитах (хотя это заставит вас надавить: git push --force, чтобы опубликовать вашу историю для этой ветки. Если другие соавторы уже вытащили из той же ветки, ваш подход, используя git revert, является лучшим)