Які команди Git використовуються для скасування змін?
Для скасування змін у Git використовується кілька команд, вибір залежить від того, на якому етапі перебувають зміни.
1. Скасування змін у робочому дереві (до git add)
git restore <file>
Скасовує зміни у файлі і повертає його до стану останнього коміту.
git restore file.txtgit checkout -- <file> (застарілий варіант)
Робить те саме, але вважається менш бажаним.
git checkout -- file.txt2. Скасування додавання до staging area (unstage)
git restore --staged <file>
Прибирає файл зі staging area, але зберігає зміни в робочому дереві.
git restore --staged file.txtgit reset <file>
Альтернативний спосіб прибрати файл з індексу.
git reset file.txt3. Скасування коміту зі зміною історії
git reset
Використовується для відкату локальних комітів.
git reset --soft HEAD~1 # скасувати коміт, зберегти зміни в stage
git reset --mixed HEAD~1 # скасувати коміт, зберегти зміни в working directory
git reset --hard HEAD~1 # повністю видалити коміт і зміниЗмінює історію, небезпечно для публічних гілок.
4. Скасування коміту без зміни історії
git revert
Створює новий коміт, який скасовує зміни зазначеного коміту.
git revert HEADБезпечно для спільних гілок.
5. Тимчасове скасування змін
git stash
Тимчасово зберігає зміни і очищає робоче дерево.
git stash
git stash popКлючове формулювання для співбесіди
Для скасування змін у Git використовуються команди
restore,reset,revertіstash. Конкретна команда обирається залежно від того, де перебувають зміни: у робочому дереві, staging area чи історії комітів.
Коротка відповідь
Для співбесідиКоротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.