Git вернуть не удается на тянуть - PullRequest
0 голосов
/ 07 сентября 2018

Я сломал свой скрипт с помощью git commit. Я смог сбросить его с помощью этой команды и заставить его работать снова:

git reset --hard 148cdea0c52 && git clean -f

Но когда я делаю git pull, скрипт снова ломается. Как мне сделать этот рабочий коммит текущим коммитом для этой ветки?

1 Ответ

0 голосов
/ 07 сентября 2018

Причина, по которой ваша команда reset не приводит к ожидаемому результату, заключается в том, что команда reset фактически сбрасывает текущее значение HEAD текущей ветви в указанное состояние / фиксацию (например, 148cdea0c52). Но когда вы снова делаете git pull, ваш текущий заголовок переходит к исходному заголовку, который содержит ошибочный коммит, от которого вы хотите избавиться.

Быстрое исправление может быть - после сброса HEAD вы можете принудительно нажать кнопку HEAD для обновления вашего удаленного филиала.

Самый чистый способ сделать это - запустить

git revert <commit-id>

*** Здесь <commit-id> должен быть коммит, который привел к ошибке. git revert создаст новый коммит, вернув изменения из вашего оригинального коммита. После этого вы можете перенести текущий HEAD в удаленный репозиторий, чтобы в удаленном репозитории также было самое последнее исправление.

Вы также можете запустить команду git rebase -i, чтобы молча отбросить предыдущий коммит. Затем принудительно нажмите, чтобы обновить удаленный репозиторий. Хотя я настоятельно рекомендую вам не делать этого, если вы точно не знаете, что собираетесь делать.

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