13. Скасування проіндексованих змін (перед комітом)

Цілі

  • Навчитися скасовувати зміни, які було проіндексовано.

01 Внесіть зміни у файл і проіндексуйте їх

Внесіть зміни у файл hello.html у вигляді небажаного коментаря

Файл: hello.html

<html>
  <head>
    <!-- This is an unwanted but staged comment -->
  </head>
  <body>
    <h1>Hello, World!</h1>
  </body>
</html>

Проіндексуйте ці зміни.

Виконайте

git add hello.html

02 Перевірте стан

Перевірте стан небажаної зміни.

Виконайте

git status

Результат

$ git status
On branch main
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
	modified:   hello.html

Стани показує, що зміни було проіндексовано і готове до коміту.

03 Відновлення індексу

Команда restore з прапором --staged очищає область показу.

Виконайте

git restore --staged hello.html

Результат

$ git restore --staged hello.html

Команда restore з опцією --staged не змінює фактичні файли у робочому каталозі. Тому файл hello.html і надалі міститиме небажані коментарі. Однак слід бути обережними, оскільки restore без прапорця --staged також відкине зміни у робочому каталозі.

04 Відновлення файлу

Відновимо наш файл до стану останнього коміту.

Виконайте

git restore hello.html
git status

Результат

$ git restore hello.html
$ git status
On branch main
nothing to commit, working tree clean

Наша робоча директорія знову чиста.