Как отменить git pull?

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

Как я могу вернуться к состоянию до того, как я нажму git на удаленном источнике?

Ответ 1

Или сделать его более явным, чем другой ответ:

git pull 

возгласы?

git reset --keep [email protected]{1}

Версии git старше 1.7.1 не имеют --keep. Если вы используете такую ​​версию, вы можете использовать --hard - но это опасная операция, потому что она теряет локальные изменения.


комментатору

ORIG_HEAD - это предыдущее состояние HEAD, заданное командами, которые могут иметь опасное поведение, чтобы их было легко вернуть. Теперь менее полезно, что git имеет reflog: HEAD @{1} примерно эквивалентен ORIG_HEAD (HEAD @{1} всегда является последним значением HEAD, ORIG_HEAD является последним значением HEAD перед опасной операцией)

Ответ 2

git reflog show должен показать вам историю HEAD. Вы можете использовать это, чтобы выяснить, где вы были до pull. Тогда вы можете reset ваш HEAD выполнить эту фиксацию.

Ответ 3

Это сработало для меня.

git reset --hard ORIG_HEAD 

Отменить слияние или вытянуть:

$ git pull                         (1)
Auto-merging nitfol
CONFLICT (content): Merge conflict in nitfol
Automatic merge failed; fix conflicts and then commit the result.
$ git reset --hard                 (2)
$ git pull . topic/branch          (3)
Updating from 41223... to 13134...
Fast-forward
$ git reset --hard ORIG_HEAD       (4)

Зарезервируйте это: HEAD и ORIG_HEAD в Git для более подробной информации.

Ответ 4

Найдите <SHA#> для фиксации, которую хотите выполнить. Вы можете найти его в github или набрав git log или git reflog show в командной строке, а затем выполните git reset --hard <SHA#>

Ответ 5

Вы можете просто выполнить команду J для файлов, которые вам не нужны. который покажет последний обновленный код. Надеюсь, что это поможет вам !