Git

Як повернутися до попереднього коміту в Git?

Як повернутися до попереднього коміту в Git?
Команда “git revert” виконує надзвичайно корисну операцію в середовищі Git. Іноді ви хочете скасувати зміни, які ви колись здійснили, фактично не вилучаючи ці зміни з “журналу git”, щоб ви завжди могли їх повторити в майбутньому, коли захочете. Команда “git revert” точно дозволяє вам це зробити. Це означає, що ви можете легко звести нанівець або скасувати ефект будь-якого попереднього коміту, фактично не вилучаючи його зі своєї історії Git. Тому ця стаття покликана навчити вас методу повернення до попереднього коміту в Git в Ubuntu 20.04.

Метод повернення до попереднього коміту в Git в Ubuntu 20.04:

Для пояснення вам методу повернення до попереднього коміту в Git в Ubuntu 20.04, ми розробили приклад сценарію. У цьому випадку ми спочатку змінимо вже існуючий файл з назвою abc.txt. Крім того, у нашому сховищі тестових проектів є два інших файли з назвою Stash1.txt та Stash2.txt, який ми раніше не виконували. Отже, ми здійснимо всі ці зміни відразу. Тоді ми спробуємо повернутися до попереднього стану i.e. стан, при якому ні файли Stash1.txt та Stash2.txt не існувало, ані файл abc.txt було змінено. Для подальшого розробки цього сценарію ми хотіли б провести вас за допомогою наступних кроків:

Крок 1. Перейдіть до каталогу Git Project:

Спочатку ми перейдемо до каталогу, де знаходиться наше сховище проектів Git, як показано нижче:

cd / home / kbuzdar / simplegit-progit

Після виконання цієї команди вона змінить шлях за замовчуванням до вашого терміналу, як показано на наступному зображенні:

Крок №2: Перерахуйте вміст каталогу Git Project:

Тепер ми перелічимо вміст нашого сховища тестових проектів, щоб побачити, які файли вже там. Вміст нашого сховища проектів Git можна перерахувати за допомогою команди, зазначеної нижче:

ls

Зміст нашого сховища проектів Git показано на наступному зображенні:

Крок 3. Відкрийте та змініть будь-який файл у каталозі проекту Git:

Ми вибрали файл abc.txt із нашого сховища проектів Git для модифікації. Тепер ми відкриємо цей файл за допомогою редактора nano, як показано нижче:

sudo nano abc.txt

У цьому файлі написано випадковий текст, як показано на наступному зображенні:

Ми змінимо цей текст, додавши до нього «ні», як показано на малюнку нижче. Зробивши цю модифікацію, ми просто вийдемо з редактора nano, зберігаючи файл abc.txt.

Крок No4: Повторно ініціалізуйте своє сховище проектів Git:

Після внесення всіх бажаних змін нам потрібно повторно ініціалізувати наше сховище проектів Git за допомогою наступної команди:

git init

Після виконання цієї команди Git повторно ініціалізується, відображаючи на вашому терміналі повідомлення, показано на малюнку нижче:

Крок 5: Додайте зміни до вашого сховища проектів Git:

Тепер нам потрібно додати зміни до нашого сховища проектів Git, виконавши таку команду:

git add.

Успішне виконання цієї команди нічого не відобразить на нашому Ubuntu 20.04 термінал.

Крок №6: Зафіксуйте нещодавно внесені зміни у своєму сховищі проектів Git:

Після додавання змін до нашого сховища проектів Git, ми здійснимо ці зміни наступною командою:

git commit -m “Повідомлення для відображення”

Тут ви можете змінити “Повідомлення для відображення” з фактичним повідомленням, яке потрібно відобразити під час виконання цієї команди.

Коли ця команда буде виконана, ви помітите, що наші два файли, які раніше не були зняті i.e. Заначка1.txt та Stash2.txt буде здійснено.

Крок 7: Перевірте історію комітування Git:

Тепер ми перевіримо історію комітів Git, щоб побачити, чи було зареєстровано наше останнє комітування. Історію коміту Git можна перевірити за допомогою наступної команди:

git log --pretty = oneline

З історії коміту Git, показаної на зображенні нижче, ви легко бачите, що Head вказує на наш останній коміт i.e. транзакція, в якій ми скопіювали файли Stash1.txt, Stash2.txt та abc.txt (після модифікації). Крім того, ми помітимо ідентифікатор транзакції цього коміту з історії комітів, щоб ми могли повернути його на наступному кроці, використовуючи цей ідентифікатор.

Крок 8: Виконайте операцію “git revert”:

Перші п’ять символів ідентифікатора транзакції нашої останньої транзакції - 220ac. Ці символи будуть використовуватися для посилання на цей коміт. Тепер ми скасуємо цей коміт за допомогою наступної команди:

git revert 220ac

Коли ця команда буде виконана, вона відобразить повідомлення в редакторі nano про те, що ваша транзакція з ідентифікатором транзакції 220ac буде скасована, як показано на зображенні нижче:

Вам потрібно натиснути Ctrl + X після перегляду цього повідомлення, щоб ви могли бачити точний стан вашого терміналу, як показано на наступному зображенні. Цей статус покаже нам, що зміни, внесені раніше i.e. модифікація abc.txt та додавання Stash1.txt та Stash2.txt було скасовано. Це також означає, що тепер наш файл abc.txt повернеться до попереднього стану i.e. він буде представляти свій оригінальний вміст без змін. Більше того, файли Stash1.txt та Stash2.txt буде видалено.

Крок 9: Перевірте ще раз історію комітів Git:

Тепер ми ще раз перевіримо історію комітів Git, щоб побачити поточну ситуацію. Якщо операція повернення була виконана успішно, тоді керівник нашого проекту буде вказувати на цю операцію повернення, як це виділено на зображенні, показано нижче:

Крок No10: Перевірте, чи успішно працювала команда “git revert”:

Хоча ми вже бачили, що керівник нашого проекту в даний час вказує на транзакцію повернення, чого достатньо, щоб вказати на те, що команда “git revert” функціонувала належним чином. Однак ми все ще можемо це забезпечити, перевіривши статус Git. Тут ми зможемо побачити, що більше не буде передавати файли, як ті, що були раніше i.e. Stash1 і Stash2 вже були видалені операцією повернення. Таким чином, більше не буде створюватися нових файлів, як показано на наступному зображенні:

Крім того, ми можемо спробувати перерахувати вміст нашого сховища проектів Git, щоб підтвердити видалення файлів Stash1.txt та Stash2.txt, як показано на зображенні нижче. Тут слід зазначити, що файли Stash1.txt та Stash2.txt були видалені нашою операцією повернення виключно тому, що до здійснення транзакції з ідентифікатором транзакції 220ac, цих двох файлів не існувало. Ось чому в результаті скасування цього коміту ці файли більше не існуватимуть. Однак якщо ви знову виконаєте операцію повернення для цієї операції повернення i.e. ви спробуєте звести нанівець ефект від операції повернення, яку ви щойно виконали, тоді ви зможете знову побачити ці два файли.

Нарешті, ми також можемо перевірити наш файл abc.txt ще раз, щоб перевірити, повернувся він із початковим вмістом чи ні. Ми просто відкриємо цей файл ще раз за допомогою редактора nano, і на наступному зображенні ви помітите, що зміни, зроблені нами раніше для цього файлу, були скасовані.

Висновок:

Пройшовши детальний сценарій, представлений вам у цій статті, ви, сподіваємось, зможете скористатися командою “git revert” в Ubuntu 20.04 дуже ефективно. Ця команда скасує ефект від будь-якої попередньої транзакції, зберігаючи її запис у “git log”, так що в будь-який момент часу ви зможете зручно повернутися до цієї транзакції. Іншими словами, ми можемо сказати, що команда “git revert” здійснює транзакцію, яка є точною оберненою до команди, яка була здійснена раніше (без видалення попереднього коміту). Саме тому йому вдається скасувати свій ефект.

Remap your mouse buttons differently for different software with X-Mouse Button Control
Maybe you need a tool that could make your mouse's control change with every application that you use. If this is the case, you can try out an applica...
Microsoft Sculpt Touch Wireless Mouse Review
I recently read about the Microsoft Sculpt Touch wireless mouse and decided to buy it. After using it for a while, I decided to share my experience wi...
AppyMouse On-screen Trackpad and Mouse Pointer for Windows Tablets
Tablet users often miss the mouse pointer, especially when they are habitual to using the laptops. The touchscreen Smartphones and tablets come with m...