Отмена коммита (Revert)
Часть раздела Контроль версий путешествия по Terminal на Coddy. Урок 43 из 58.
Если коммит уже был опубликован, его изменение рискованно, так как исходный ID будет утерян. Более безопасный вариант — git revert.
git revert HEADgit revert создает совершенно новый коммит, который отменяет изменения из целевого коммита, оставляя оригинал на месте. Ваша история будет выглядеть так: «мы сделали X, а затем отменили X».
Вы можете отменить любой коммит по ID, а не только последний:
git revert a1b2c3dИспользуйте --no-edit, чтобы пропустить редактор и принять сообщение о возврате по умолчанию:
git revert --no-edit HEADСообщение по умолчанию выглядит как Revert "Original subject", при этом исходное сообщение дублируется в теле.
Задание
ЛегкоПапка содержит app.txt. Инициализируйте репозиторий и создайте два коммита:
- Добавьте
app.txtс сообщениемAdd app. - Добавьте
brokenвapp.txtи сделайте коммит с сообщениемAdd broken line.
Откатите последний коммит (без открытия редактора), чтобы отменить битую строку. Выведите содержимое app.txt.
Попробуйте сами
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Контроль версий
2Начало работы
Инициализация репозиторияПапка .gitНастройка данных пользователяGit StatusИтоги — первый репозиторий5Игнорирование файлов
Зачем игнорировать файлыШаблоны .gitignoreПроверка правил игнорированияИтоги: чистый репозиторий8Слияние
Что такое слияниеСлияние Fast-ForwardТрёхстороннее слияниеКонфликты слиянияРазрешение конфликтаИтоги — Мастер слияния11Проект: Feature Branch
Обзор проектаИнициализация Main3Отслеживание изменений
Область подготовкиGit AddGit CommitИзменение отслеживаемого файлаGit LogИтоги: первые коммиты6Проект: Сайт рецептов
Обзор проектаИнициализация и игнорирование9Отмена изменений
Отмена непроиндексированных измененийИсключение файла из индексаИсправление последнего коммитаОтмена коммита (Revert)Сброс ветки (Reset)Итоги — Машина времениПотренируйтесь самостоятельно: Песочница Terminal