ГИТ переключение между коммитами
Я читал здесь и искал много, но не нашел ответа, так что есть способ переключаться между коммитами, как вы делаете с ветвями.Допустим, у меня есть эти коммиты: a;b;c здесь c - мой последний коммит, могу ли я переключиться обратно на commit a? Или вы должны сделать git diff и изменить файлы вручную?
3 ответов
просто типа git checkout a. Или, может быть, с большей пользой.--1-->, в кассу a как новый филиал mybranch.
если вы хотите вернуть b и c, вы можете использовать git revert, или полностью удалить их из истории вашей текущей ветви, вы может git rebase -i a и выбросить их.
даже если вы собираетесь использовать git diff, вам не придется ничего делать вручную. Проверьте git format-patch, git apply и git am для автоматизации создания и применения заплаты.
вы можете создать ветвь из ревизии, с которой хотите работать. Номер редакции можно увидеть с помощью
git log
ветвь из предыдущей редакции
git branch -f branchname rev
git использует определение commitish. git определяет commitish как:
commit-ish
указывает имя объекта фиксации или тега. Команда, которая принимает commit-ish аргумент в конечном счете хочет работать с объектом commit, но автоматически разыменования помечают объекты, указывающие на фиксацию.
Это кажется немного неполным, поскольку ветви также часто рассматриваются как commit-ish.
в принципе, вы можете оформить заказ все, что имеет хэш SHA-1.