12. Скасування локальних змін (до індексації)
Цілі
- Навчитися скасовувати зміни в робочій директорії.
01 Перейдіть на гілку main
Переконайтеся, що ви перебуваєте на останньому коміті гілки main
, перш ніж продовжити роботу.
Виконайте
git switch main
02 Змініть hello.html
Іноді після того, як ви змінили файл у робочій директорії, ви передумали та хочете просто повернутися до того, що вже було закомічено. Команда checkout
впорається з цим завданням.
Внесіть зміни у файл hello.html
у вигляді небажаного коментаря.
Файл: hello.html
<html>
<head>
</head>
<body>
<h1>Hello, World!</h1>
<!-- This is a bad comment. We want to revert it. -->
</body>
</html>
03 Перевірте стан
Спочатку перевірте стан робочої директорії.
Виконайте
git status
Результат
$ git status
On branch main
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: hello.html
no changes added to commit (use "git add" and/or "git commit -a")
Ми бачимо, що файл hello.html
було змінено, але ще не проіндексовано.
04 Скасування змін в робочій директорії
Використовуйте команду checkout
для перемикання в версію файлу hello.html
у репозиторії.
Виконайте
git checkout hello.html
git status
cat hello.html
Результат
$ git checkout hello.html
Updated 1 path from the index
$ git status
On branch main
nothing to commit, working tree clean
$ cat hello.html
<html>
<head>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
Команда status
показує нам, що в робочій директорії не було зроблено жодних незафіксованих змін. І «небажаний коментар» більше не є частиною вмісту файлу.