Могу ли я вернуться к предыдущему моменту времени, а затем вернуться с GitHub в Android Studio 3.5.1? - PullRequest
1 голос
/ 22 октября 2019

Я использую GitHub в своем проекте Android Studio, я фиксирую два раза, есть A1 и A2 .

Теперь я надеюсь выполнить откат к предыдущему моменту времени A1 , чтобы посмотреть, я надеюсь, что локальная рабочая область также будет A1 после отката.

Поэтому я выбираю 'Сбросить текущую ветвь сюда' пункт меню и выберите «Hard» вариант из всплывающего окна, вы можете увидеть Изображение 1 . Локальная рабочая область - A1 , как я думаю.

После того, как я закончу взгляд, я надеюсь вернуться A2 с локальной рабочей областью A2 статус, но я нахожу A2 запись отклонена, вы можете увидеть Изображение 2 .

Какие ошибки у меня?

Изображение1

enter image description here

Изображение 2

enter image description here

1 Ответ

1 голос
/ 22 октября 2019

Решение существующей проблемы

Вам придется снова сброситься до A2, чтобы восстановить вашу ситуацию. Поскольку вы, похоже, предпочитаете пользовательский интерфейс Android Studio интерфейсу командной строки, я бы посоветовал проверить вашу локальную историю, чтобы восстановить состояние до последнего сброса. (Но следует отметить, что в CLI это будет означать проверку git reflog, определение хэша состояния для восстановления, затем git reset --hard <hash>)


Предотвращение этой ситуации в будущем

Когда вам нужно проверить старый коммит, чтобы позже вернуться к текущему состоянию без изменения недавней истории, вы не должны reset --hard, а скорее checkout коммит напрямую.

Это заставит вас войти в то, что называется отсоединенное состояние HEAD , что означает, что вы в данный момент указываете не на ветку, а непосредственно на коммит в дереве.

Когда вы закончитеосматривая указанный коммит, чтобы вернуться в A2, просто снова проверьте вашу (master) ветку.

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