Как мне отменить принудительный коммит, чтобы этого никогда не было? - PullRequest
3 голосов
/ 25 января 2012

Я испортил ...

Как мне отменить принудительный коммит, чтобы его никогда не было?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 25 января 2012

Хотя Даниал Питтман предоставил вам процесс «стирания» предпринятых вами действий, я бы предложил другой подход. Если возможно, вам лучше исправить сделанные вами изменения, а затем зафиксировать те, которые по существу отменяют предыдущий. Да, люди все еще смогут заглянуть в историю репо и, возможно, увидеть «ошибку», но это более безопасный подход. Более того, в случае, если вы действительно когда-нибудь захотите внести изменения, они будут сохранены в хранилище при использовании этого метода. Надеюсь, это поможет!

2 голосов
/ 25 января 2012

Предупреждение: каждый шаг здесь разрушителен. Не поймите неправильно и возьмите копию своего репо перед началом.

git reset --hard $what, где находится SHA или что вы хотите вернуться в этой ветке. (например: HEAD^, если вы просто хотите отменить последний коммит.)

Как только вы это сделаете, git push --force ..., чтобы получить это в удаленном хранилище.

Это решает все ... кроме удаления мертвого блоба и т. Д. Из удаленного хранилища. Если это важно для вас, жизнь сложнее. Нет никакого протокола, чтобы избавиться от него, поэтому вы либо удалите удаленное хранилище и создадите новую, чистую копию, либо сделаете что-то специфичное для back-end.

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