Введение
🧑💻 Новый в Git или LabEx? Мы рекомендуем начать с курса Быстрый старт с Git.
Git - это мощная система контроля версий, которая позволяет разработчикам отслеживать изменения в их кодовой базе. Одной из самых полезных функций Git является возможность отменить изменения, которые были зафиксированы. В этом лабе вы научитесь отменить коммит с использованием Git.
Отмена коммита
Предположим, что вы сделали коммит в свой репозиторий Git, но обнаружили, что он содержит ошибку. Вы хотите отменить коммит, не переписывая историю репозитория. Как это можно сделать?
Для демонстрации того, как отменить коммит, давайте используем репозиторий из https://github.com/labex-labs/git-playground. Следуйте шагам:
- Склоняйте репозиторий, перейдите в директорию и настройте идентификацию:
git clone https://github.com/labex-labs/git-playground cd git-playground git config --global user.name "your-username" git config --global user.email "your-email" - Просмотрите историю коммитов:
Вы должны увидеть список коммитов, каждый с уникальным идентификатором (длинной строкой букв и цифр).git log - Выберите коммит с сообщением "Added file1.txt" и скопируйте его идентификатор.
- Отмените коммит с использованием команды
git revert:
Заменитеgit revert <commit><commit>на идентификатор коммита, который вы хотите отменить. - Git откроет текстовый редактор и позволит вам ввести сообщение коммита, оставив стандартное сообщение на месте.
- Сохраните и закройте текстовый редактор.
- Просмотрите историю коммитов снова:
Вы должны увидеть новый коммит, который отменяет изменения, внесенные в исходном коммите.git log
Вот результат выполнения команды git log:
commit 0d01f357a798f8960959546750d89a7e56a04a44 (HEAD -> master)
Author: xiaoshengyunan <@users.noreply.github.com>
Date: Mon Jul 24 21:52:43 2023 +0800
Revert "Added file1.txt"
This reverts commit cf80005e40a3c661eb212fcea5fad06f8283f08f.
Резюме
Отмена коммита в Git - это полезный навык для разработчиков. Используя команду git revert, вы можете отменить коммит, не переписывая историю репозитория. Не забудьте выбрать правильный коммит для отмены и ввести осмысленное сообщение коммита.