Ошибка:
Я git rebase -i --root
редактировал свою ветку, не зная, что могу перефразировать первый коммит, отличный от основного ( GitHub для Windows представление по умолчанию - это сравнение с мастером, полностью скрывающее его).
Я отрастил бороду в Силиконовой долине, а 900+ коммитов погрузились в Sublime. Выйдя без изменений, я зарядил батарею, а затем приступил к бритью, так как все 900+ отдельных коммитов небрежно перебазированы - сбрасывая время их фиксации до настоящего времени.
Решив побить Git и сохранить первоначальное время, я удалил этот локальный репозиторий и повторно клонировал с пульта.
Теперь он заново добавил последний ненужный коммит к мастеру, который я хотел удалить, поэтому продолжил так.
Исчерпывающие возможности:
Я не хотел бы git revert
- это создаст дополнительный коммит, который даст Git преимущество.
git reset --hard HEAD
ничего не сделал, после проверки reflog
последний и единственный HEAD
был клоном - Git выигрывает.
Чтобы получить самый последний SHA, я проверил удаленный репозиторий на github.com - незначительный выигрыш.
Подумав, git reset --hard <SHA>
сработало, я обновил другую ветку до master и 1 ... 2 ... poof! коммит вернулся - Гит побеждает.
Возвращаясь к мастеру, попробуйте git rebase -i <SHA>
, затем удалите строку ... безрезультатно, к сожалению. Msgstr " Если вы удалите строку, ЭТОТ КОМИТЕТ БУДЕТ ПОТЕРЯН ". Ах ... вкратце о новой функции troll n00b в примечаниях к выпуску 2.8.3 .
Решение:
git rebase -i <SHA>
, затем d, drop = remove commit
.
Для проверки я выехал в другую ветку, и вуаля - нет скрытого коммита для извлечения / извлечения из мастера.
https://twitter.com/holman/status/706006896273063936
Добрый день.