Как я могу вернуть точку GitHub и все еще в мастер ветке в Android Studio? - PullRequest
0 голосов
/ 28 февраля 2019

Я использую GitHub в своем проекте в Android Studio 3.3.1.

Я пишу код в локальной master ветви и отправляю их на удаленный origin / master .

Изображение Submit_3 - моя последняя работа и результат отправкиснимок.

Я считаю, что код после Submit_1 Снимок изображения неверен, поэтому я надеюсь вернуть Submit_1 и написать новый код.Я надеюсь, что смогу выполнить новую работу еще в основной ветке, как я могу это сделать?

Кстати, в настоящее время я использую команду Checkout Revision , чтобы вернуться к Submit_1 (см. Текущее изображение),и создайте ветвь temp для Submit_1, затем переключитесь на ветвь master и объедините ветвь temp .Но я нахожу результат так же, как Result Image - то же изображение Submit_3, почему?

Submit_3 Изображение enter image description here

Submit_1 Изображение enter image description here

Текущее изображение enter image description here

Результат изображения enter image description here

Ответы [ 2 ]

0 голосов
/ 08 марта 2019

Я не уверен, что понимаю вашу проблему, но думаю, что вы хотите Reset Current Branch to Here....Это удалит Отправить 2 и Отправить 3 и вернуться к времени Отправить 1. Вы будете иметь в своем дереве:

Submit 1           (master)
Initial Commit

Затем, , чтобы сделать это реальностью в GitHub , вам нужно Push Force, когда вы внесете свои изменения.И окончательное дерево будет:

Submit 1           (origin & master)
Initial Commit

ПОЖАЛУЙСТА, сделайте это осторожно.После нажатия кнопки «Отправить 2» и «Отправить 3» будут окончательно удалены.

0 голосов
/ 07 марта 2019

Причина, по которой вы получаете тот же результат после слияния temp, заключается в том, что вы по существу объединяете то, что находится в master (что включает в себя неправильную вещь), и то, что находится в temp;таким образом, имея неправильный и правильный код.

Решение вашей первоначальной проблемы:

  1. git checkout master => Переход к главной ветви
  2. git log -n[some number] => Показывает список сообщений о коммитах;например.git log -n 5 покажет вам последние 5 сообщений коммита.
  3. Найдите номер коммита коммита, к которому вы хотите вернуться.Скопируйте его.
  4. git reset --hard [номер коммита здесь] => Это вернет master в том месте, где вы выбрали номер коммита.Будьте осторожны, это сотрет все, что пришло после этого коммита.
  5. Я не помню, нужно ли вам делать git push или он делает это за вас.Проверьте, выполнив git status
  6. Продолжайте писать свой код.Если у вас есть новые вещи в temp, на этом этапе, если вы делаете git merge temp.Он получит ваш новый материал и не будет иметь неправильный код, который был в мастере раньше.Если что-то пойдет не так, сделайте то, что я описал выше, чтобы вернуться к любому коммиту.

Удачи!

Кроме того, официальный документ здесь: https://git -scm.com/ документы / ГИТ-сброс

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