Я щойно зробив
git commit -m "blah"
потім я додав деякі файли, як мені відскакувати та видалити те, що є у моїх поточних файлах, які ще не додано / скоєно?
Я щойно зробив
git commit -m "blah"
потім я додав деякі файли, як мені відскакувати та видалити те, що є у моїх поточних файлах, які ще не додано / скоєно?
Відповіді:
Caveat Emptor - попереду руйнівні команди.
Пом'якшення наслідків - git reflog може заощадити, якщо вам це потрібно.
1) Змінюється локальний файл UNDO і зберігайте останнє зобов’язання
git reset --hard
2) UNDO змінює локальний файл і ВИДАЛУЄТЬСЯ останнє зобов’язання
git reset --hard HEAD^
3) ЗБЕРІГАЙТЕ зміни місцевих файлів і ВИДАЛУЙТЕ останнє зобов’язання
git reset --soft HEAD^
Якщо ви хочете видалити нещодавно доданий вміст та файли, які вже є поетапними (так додані до індексу), ви використовуєте:
git reset --hard
Якщо ви хочете видалити також останню команду (це повідомлення із повідомленням "blah"), тоді краще скористайтеся:
git reset --hard HEAD^
Щоб видалити незафіксовані файли (тому нові файли ще не додані до індексу) та папки використовуйте:
git clean --force -d
git reset --hard змусить робочий каталог повернутися до останнього фіксації та видалити нові / змінені файли.
Ви можете скасувати комісію, використовуючи git revert HEAD^для повернення до наступного до останнього. Ви також можете вказати зобов’язання відновити, використовуючи id замість HEAD ^
Якщо ви хочете просто скасувати останнє зобов’язання, скористайтеся цим:
git reset HEAD~
робота як шарм для мене.
Простий надійний спосіб зміни локальних файлів UNDO з останнього зобов’язання - розмістити їх у новій гілці:
git branch changes
git checkout changes
git add .
git commit
Це залишає зміни в новій галузі. Поверніться до початкової гілки, щоб повернути її до останнього комітету:
git checkout master
Нова гілка - це гарне місце для практику різних способів відновити зміни, не ризикуючи зіпсувати початкову гілку.