Как удалить опубликованный коммит Git из истории? - PullRequest
6 голосов
/ 08 июня 2011

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

Я смог изменить свою историю локально с помощью команды вроде:

git rebase --onto HEAD~4 HEAD~3 HEAD

, которая, казалось, работала нормально.Однако тогда я не знаю, как вернуть эту измененную историю обратно в github.

Ответы [ 2 ]

4 голосов
/ 08 июня 2011

Мне удалось выполнить весь процесс другим способом после некоторого возни:

git rebase -i <commit>^
... delete first commit in editor ...
git push -f
3 голосов
/ 08 июня 2011

Если у вас есть какие-либо слияния, вам нужно сохранить их с

git rebase -i --preserve-merges commit^

В противном случае, git сгладит вашу историю.

Затем нажмите с параметром силы.

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