Поиск по сайту:

За каждой вещью в мире нам слаще гнаться, чем иметь ее (В. Шекспир).

Как использовать git reset

3 мин для чтения
FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
15 мая 2021
Как добавить Git Remote
Изменения в репозитории git выполняются в текущем рабочем каталоге, и изменения могут быть помещены в индекс, из которого пользователь git может выбрать следующую фиксацию. Иногда пользователям git необходимо отменить изменения, сделанные в репозитории для целей проекта. Для выполнения этой задачи используется команда `git reset`. Эта команда сбрасывает текущее состояние HEAD в определенное состояние, и она может работать со всеми задачами фиксации или на уровне отдельного файла. С этой командой можно использовать различные типы параметров режима сброса. Назначение каждого параметра сброса и то, как некоторые параметры сброса могут быть применены с помощью команды `git reset` для локального репозитория git, были объяснены в этой статье.

 

Параметры сброса Git:

Вариант Цель
-soft Он используется для запуска команды сброса без перезаписи каких-либо незафиксированных измененных файлов. Он не сбрасывает индекс и не вносит изменений в текущее рабочее дерево.
–mixed Это параметр сброса по умолчанию, он сбрасывает индекс, но не вносит никаких изменений в рабочее дерево.
-hard Он сбрасывает и индекс, и рабочее дерево. Таким образом, любые зафиксированные или незафиксированные изменения, сделанные в рабочем дереве, будут потеряны.
–merge Он сбрасывает индекс и изменяет файлы в рабочем дереве, если существует какое-либо различие между индексом и рабочим деревом. Если в рабочем каталоге существует какой-либо файл, который не спрятан, сброс будет прерван.
-keep Он сбрасывает записи индекса и изменяет файлы рабочего дерева при любых различиях между индексом и рабочим деревом. Если разница существует в локальном файле, сброс будет отменен.
-[no-]recurse-submodules Он используется для рекурсивного сброса рабочего дерева всех активных подмодулей.

 

Предпосылки:

Установка GitHub Desktop

GitHub Desktop помогает пользователю git графически выполнять задачи, связанные с git. Вы можете легко загрузить последнюю версию этого приложения для Ubuntu с github.com. Вы должны установить и настроить это приложение после загрузки, чтобы использовать его. Вы также можете проверить руководство по установке GitHub Desktop в Ubuntu, чтобы правильно узнать процесс установки.

Читать  Игнорирование файлов и каталогов в Git (.gitignore)

 

Создание локального репозитория

Вы должны создать локальный репозиторий для тестирования команд, используемых в этой статье для проверки и разрешения конфликта слияния.

 

Сброс Git для конкретного файла:

В этой части статьи показано использование команды `git reset` для конкретного файла. Выполните следующую команду, чтобы проверить текущий статус репозитория, добавить файл send-email3.php и сбросить файл send-email3.php.

$ git status
$ git add send-email3.php
$ git reset send-email3.php

 

Следующие выходные данные показывают, что команда сброса изменила отслеживаемый файл на неотслеживаемый файл без какой-либо опции. Чтобы изменить статус всех отслеживаемых файлов репозитория на неотслеживаемые файлы, вы должны использовать команду git reset HEAD.

 

Сброс Git с параметром – -soft:

Использование команды  `git reset` с – вариантом soft показано в этой части статьи. Эта опция сохраняет рабочее дерево неизменным. Выполните следующую команду, чтобы проверить текущий статус репозитория, добавить файл send-email3.php и сбросить репозиторий с параметром –soft.

$ git status
$ git add send-email3.php
$ git reset --soft
$ git status

 

Следующий вывод появится после выполнения вышеуказанных команд. Выходные данные показывают, что рабочий тройник остался неизменным после выполнения команды reset, поскольку опция –soft сбрасывает только индекс.

 

Сброс Git с параметром – -hard:

В этой части статьи показано использование команды `git reset` с параметром –hard. Эта опция перемещает указатель HEAD и обновляет содержимое рабочего дерева с содержимым, на которое указывает HEAD. Выполните следующую команду, чтобы проверить текущий статус репозитория, добавить файл send-email3.php и сбросить репозиторий с параметром –hard.

$ git status
$ git add send-email3.php
$ git reset --hard
$ git status

 

Следующий вывод появится после выполнения вышеуказанных команд. Выходные данные показывают, что рабочий тройник очищен и нечего фиксировать после выполнения команды сброса, а добавленный файл был удален из репозитория.

 

Сброс Git с опцией –mixed:

В этой части руководства показано использование команды `git reset` с параметром –mixed. Этот параметр перемещает указатель HEAD и обновляет содержимое промежуточной области содержимым, на которое указывает HEAD. Но он не обновляет рабочий древовидный параметр –hard и предоставляет информацию о неотслеживаемых файлах. Создайте новый файл с именем send-email-new.php в текущей папке репозитория. Выполните следующую команду, чтобы проверить текущий статус репозитория, добавить файл send-email3.php и сбросить репозиторий с параметром –mixed.

$ git status
$ git add send-email-new.php
$ git reset --mixed
$ git status

 

Читать  Как сделать синхронизацию локальных и удаленных каталогов в Linux

Следующий вывод появится после выполнения вышеуказанных команд. Выходные данные показывают, что команда сброса сохранила текущий рабочий каталог неизменным, поскольку локальный репозиторий изменился, что задача не была зафиксирована. Итак, задача сброса прервана.

 

Заключение:

В этой статье были объяснены четыре различных способа запуска команды `git reset` с использованием локального демонстрационного репозитория. Первый сброс был применен к определенному файлу. Второй сброс был применен с опцией –soft. Третий сброс применяется с опцией –hard. Четвертый сброс был применен с опцией –mixed. Мы надеемся, что читатели правильно воспользуются командой `git reset` после прочтения этого руководства.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Поделиться в соц. сетях:
5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Читайте также

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close