Давайте прочитаємо офіційну документацію :
dnf history rollback <transaction-spec>
Скасувати всі транзакції, здійснені після вказаної транзакції. Якщо неможливо скасувати будь-яку транзакцію через поточний стан RPMDB, не скасовуйте жодну транзакцію.
Наголос мій. Отже ця команда відноситься до undo
команди. Гаразд, прочитаємо документацію щодо скасування:
dnf history undo <transaction-spec>
Виконайте протилежну операцію всім операціям, що виконуються у зазначеній транзакції. Якщо неможливо скасувати будь-яку операцію через поточний стан RPMDB, не скасовуйте жодну операцію.
Звучить, що ці дві команди виконують те саме, за винятком того, що перша може скасувати кілька транзакцій, а пізніше лише одну.
Чи правильно це розуміння? (Я буду вдячний за відповіді з досвіду з перших рук, а не з точки зору того, як ви інтерпретуєте посібник, мене цікавлять факти, а не здогадки.)
Контекст: Мені потрібно написати сценарій, який запускається, dnf upgrade -y
а потім виконати деякі тести, а потім змінити зміни dnf, якщо тести не вдаються. Я шукаю найкращий спосіб досягти цього.