Как сделать "HG Backout X" в Git?

Я должен использовать Git и хочу отменить один коммит, который был за несколько коммитов до подсказки. В рт это hg backout, Что за аналоговая команда в Git?

(Я выкладываю утку, прежде чем опубликовать это, и не вижу аналоговой команды.)

3 ответа

Решение

Похоже, вам нужен git revert:) В качестве альтернативы, если вы хотите удалить все доказательства того, что этот коммит когда-либо происходил, вы можете сделать git rebase, чтобы избавиться от него. Но будьте осторожны, если вы уже опубликовали этот коммит где-то видимым, так как вы можете создавать проблемы для других людей.

Вот ссылка, говорящая о возврате:

http://gitready.com/intermediate/2009/03/16/rolling-back-changes-with-revert.html

В качестве альтернативы, просто Google для ручной документации.

Чтобы отменить некоторые конкретные коммиты, вы можете использовать:

git revert <commit_hash>

Это добавит новый коммит, который отменяет commit_hash совершить.

Если вы хотите стереть определенный коммит, переписав историю, вы можете сделать:

git rebase -i <commit_hash>^

Это откроет редактор. Просто удалите строку, содержащуюcommit_hash Вы хотите стереть, сохранить файл и выйти из редактора. Ребаз будет стирать commit_hash совершить.

Здесь находятся официальные команды, эквивалентные Git и Hg:

https://www.mercurial-scm.org/wiki/GitConcepts

И эквивалент для hg backout является git revert

Другие вопросы по тегам