Ответ 1
Я не знаю, что делает github для откат Mac, но вам кажется, что вам лучше использовать командную строку для решения проблемы:
git cherry-pick --abort
- для остановки выполнения вишневых заготовок
git branch -va
- покажет вам, где ваши указатели прямо сейчас
убедитесь, что ваш рабочий каталог чист:
git status
- не должно отображаться никаких измененных или поэтапных файлов
git stash
- если что-либо измененное все еще присутствует
git reset --hard your_local_branch github/remote_branch
- сделать локальную ветвь отражением состояния, как на удаленной стороне. очевидно, вам не нужно делать reset, если ваша текущая ветка будет указывать на то же сообщение, что и на пульте дистанционного управления. Если вы находитесь в состоянии состояния HEAD (состояние git сообщит вам об этом), то, чтобы вернуться в нормальное состояние, просто проверьте местную ветвь.
Теперь решите, чего вы на самом деле хотите достичь:
я. избавиться от ошибочной фиксации?
Используйте интерактивную перезагрузку и удалите строку с ошибочным фиксацией, затем принудительно нажмите на удаленное репо на github (скажем, ошибочное совершение произошло 10 коммитов назад)
git rebase -i HEAD~11
II. вернуть неверную фиксацию? - не рекомендовал бы делать это после некоторых других коммитов, если вы не уверены, что следующие коммиты не касаются одного и того же кода. Это эффективно создаст обратную фиксацию (если строка была добавлена ошибочной фиксацией, она будет удалена путем возврата и наоборот)
git revert {commit-sha1}
III. Изменить ошибку? используйте интерактивную переадресацию, но дайте ей указание прекратить ошибочную фиксацию для внесения поправок. Когда он прекратит редактировать изменения и продолжит перезагрузку, затем принудительно нажмите на удаленную ветку (используйте команду rebase из решения I)
После того, как вы закончите, если что-то было спрятано, используйте git stash pop
, чтобы вернуть изменения.
надеюсь, что это поможет!