Вкусный файл конфликтует из-за моей ошибки. Как я фиксирую?

Получение источника ядра

клон Устойчивое дерево ядра:

git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

Изменение в нее:

cd linux-stable

Оформить тег, где исправлена ​​ошибка:

git checkout v3.15

Вы знаете файл, который вы после драйверов / светодиодов / LED-CORE.C и где ошибка фиксирована (3.15) и сломана (3.12), поэтому есть несколько способов прийти к здесь.

Виновата

Вы можете использовать Git Blame D Реки / Светодиоды / LED-CORE.C Но я нахожу этот вид грязным.

Я предпочитаю TIG , интерфейс на основе проклятий для Git, так что только:

tig blame drivers/leds/led-core.c

и просматривать каждую строку файла и этими коммиты. Вы можете подняться вверх и вниз с клавишами со стрелками, и войти в коммит с Enter . Выход с Q .

Вы можете увидеть патч, который вы связаны с LXR на линиях 42-46:

2014-02-04 00:11 Stefan Sørensen 8d82fef         /* never on - just set to off */
2014-02-04 00:11 Stefan Sørensen 8d82fef         if (!delay_on) {
2014-02-04 00:11 Stefan Sørensen 8d82fef                 __led_set_brightness(led_cdev, LED_OFF);
2012-03-23 15:02 Bryan Wu        a403d93                 return;
2014-02-04 00:11 Stefan Sørensen 8d82fef         }

Итак, вы ищете 8D82FEF . Нажмите Введите через любую из этих строк, и вы откроете патч.

Это гораздо полезнее для больших файлов с большим количеством недавних патчей.

Журнал

Вам нужен диапазон дат, так что выглядит в Журнал Git «хороших» и «плохих» тегов, 3,15 и 3,12 слияния были:

commit 1860e379875dfe7271c649058aeddffe5afd9d0d
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 8 11:19:54 2014 -0700

    Linux 3.15

и

commit 5e01dc7b26d9f24f39abace5da98ccbd6a5ceb52
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Nov 3 15:41:51 2013 -0800

    Linux 3.12

так Все между 2 ноября 2013 года и 8 июня 2014 года - ваш патч.

Посмотрите в журнал текущего файла:

git log drivers/leds/led-core.c

Единственный патч, который соответствует данному диапазону даты, является последним:

commit 8d82fef8bbee588d071372eb02439d2053b4bfe4
Author: Stefan Sørensen <stefan.sorensen@spectralink.com>
Date:   Tue Feb 4 00:11:42 2014 -0800

    leds: Turn off led if blinking is disabled

Патч

Теперь вы использовали один из тех методов, чтобы найти коммит Что исправляет вашу проблему, получить патч из фиксации по сравнению с его предком, с:

git diff 8d82fef8^ 8d82fef8 drivers/leds/led-core.c

вы можете использовать это в файл, если хотите:

git diff 8d82fef8^ 8d82fef8 drivers/leds/led-core.c > led-blinking-fix.patch

Теперь у вас есть патч, чтобы применить к вашему внутренню дерево ядра Отказ

0
20.08.2014, 17:33
2 ответа

Попробуйте удалить ntfs-3g-2:2011. 4.12-5.el6.x86_64 пакет by:

yum remove ntfs-3g

Посмотрите, какие пакеты зависят от этого пакета. Если в списке удаления пакета есть только один пакет, вы можете уверенно удалить этот пакет. (Примечание: Не нажимайте 'Y' для удаления пакетов, если вы не знаете, какие из них).

После этого нажмите yum update.

4
28.01.2020, 02:15

Уберись в кэш-директории yum:

# yum clean all

Затем попробуй опустить пакет с:

# yum downgrade fuse-ntfs-3g

из man-страницы:

   downgrade
          Will try and downgrade a package from the version currently
          installed to the previously highest version (or the specified
          version).  The depsolver will not necessarily work, but if you
          specify all the packages it should work (thus, all the simple
          cases will work). Also this does not work for "installonly"
          packages, like Kernels. downgrade operates on groups, files,
          provides, filelists and rpm files just like the "install"
          command.

Или, чтобы привести всю систему в известное состояние (без пакетов rpmforge):

# yum distro-sync

Снова, из man-страницы:

   distribution-synchronization or distro-sync
          Synchronizes the installed package set with the latest
          packages available, this is done by either obsoleting,
          upgrading or downgrading as appropriate. This will "normally"
          do the same thing as the upgrade command however if you have
          the package FOO installed at version 4, and the latest
          available is only version 3, then this command will downgrade
          FOO to version 3.
2
28.01.2020, 02:15

Теги

Похожие вопросы