|
1 / 1 / 0
Регистрация: 01.09.2009
Сообщений: 159
|
|
Команда patch не принимает один hunk31.01.2024, 13:10. Показов 1885. Ответов 9
В продолжении предыдущей моей темы "diff, patch и версии библиотеки". Пытаюсь вставить изменения в новую версию библиотеки, исходная библиотека в папке А_1, правленная мной в А_1.1, новая версия библиотеки в папке А_2. Командой diff создаю файл различий между А_1 и А_1.1, командой patch пытаюсь вставить эти различия в новую библиотеку, папка А_2. Два hunk-а вставились успешно, а один, первый отвергнут, самый простой. Почему понять не могу. Пытался ставить fuzz с разными значениями, не помогает. Помогите разобраться в моей проблеме.
В приложении всё что удалась наработать.
0
|
|
| 31.01.2024, 13:10 | |
|
Ответы с готовыми решениями:
9
BAT запустить patch.exe | ждать выполнения | удалить patch.exe Игра принимает один геймпад за два |
|
Native x86
6857 / 3790 / 1025
Регистрация: 13.02.2013
Сообщений: 11,861
|
|
| 01.02.2024, 04:37 | |
|
Команда diff сохраняет несколько общих строк для обеих версий до и после измененного участка. А команда patch ищет именно эти не измененные строки для определения места, куда внести правки.
Если новая версия файла изменилась достаточно сильно, то найти место патчинга не всегда представляется возможным. Например, файл был полностью переписан, и в нем не осталось ни одной строчки из предыдущей версии. Или даже сам файл при рефакторинге кода был удален, а его содержимое перенесено в другие модули. Короче, diff/patch ни с какими параметрами не могут гарантировать успешное наложение всех правок при сильных изменениях. Иногда помогает инкрементальный подход: если патч создан на базе версии 1, а нужно наложить его на версию 5, то можно попробовать последовательно накладывать его на версии 2, 3, 4, каждый раз после успешного патчинга формируя новый патч, более близкий к конечной версии. Но рано или поздно все равно придется разбираться в коде и вносить правки руками.
0
|
|
|
1 / 1 / 0
Регистрация: 01.09.2009
Сообщений: 159
|
||||||
| 01.02.2024, 11:21 [ТС] | ||||||
|
Это я понимаю, немного разобрался. Но в моём случае, как я понимаю, всё просто, изменение стоит на третьей строке, patch просматривает файл от начала (@@ -1..) до 12 строки для файла исходника и от 1 строки до 13 строки для целевого файла. Я правильно понимаю документацию? В любом случае изменение попадает в этот диапазон
0
|
||||||
|
Native x86
6857 / 3790 / 1025
Регистрация: 13.02.2013
Сообщений: 11,861
|
|
| 01.02.2024, 16:22 | |
|
Тут сразу две проблемы.
В версии 2 функция check_pass() все портит, потому что она оттесняет нижний якорь. А сам нижний якорь тоже изменился (удалены лидирующие пробелы) и не может быть найден.
0
|
|
|
1 / 1 / 0
Регистрация: 01.09.2009
Сообщений: 159
|
|
| 01.02.2024, 18:10 [ТС] | |
|
Вывод, правлю автоматом с теми установками, которые у меня есть, а далее работаю ручками по тем замечаниям что в rej файлах.
0
|
|
|
1 / 1 / 0
Регистрация: 01.09.2009
Сообщений: 159
|
|
| 07.02.2024, 11:48 [ТС] | |
|
Ещё вопрос. Как из выходного файла убрать не значащую информацию? Для некоторых файлов выводит так, что весь файл убирает и потом весь файл добавляет, а по факту различий нет.
0
|
|
|
Native x86
6857 / 3790 / 1025
Регистрация: 13.02.2013
Сообщений: 11,861
|
|
| 07.02.2024, 18:32 | |
|
Oleg_IT, как-то сомнительно. Покажите файлы, что ли...
0
|
|
|
1 / 1 / 0
Регистрация: 01.09.2009
Сообщений: 159
|
|||||||||||
| 08.02.2024, 08:36 [ТС] | |||||||||||
|
Например, и такого много. Выбрал другой формат для себя, что бы легче работать с ним было.
Оттестировал отдельно эти файлы, Report.txt пустой, но когда файлы внутри библиотеки вместе с другими получается такое. Qt-шный diff различий не нашёл. diff -ul -r Source/ Paraview_5.9.1/ > Report.txt
В изначальном формате эффект тот же, только пустых строк нет. diff -uN -r Source/ Paraview_5.9.1/ > Report.txt
0
|
|||||||||||
|
Native x86
6857 / 3790 / 1025
Регистрация: 13.02.2013
Сообщений: 11,861
|
|
| 09.02.2024, 17:40 | |
|
Тут, вероятно, разный формат конца строк. Можете сами файлы прикрепить, чтобы форум их не искажал?
0
|
|
|
1 / 1 / 0
Регистрация: 01.09.2009
Сообщений: 159
|
|
| 10.02.2024, 10:32 [ТС] | |
|
Переносы строк одинаковые. Три варианта одного файла, но, получается, что версия 1 и 2 это один и тот же файл, так как он не редактировался, а версия 3 это новая версия библиотеки, там только комментарии поменяли.
0
|
|
| 10.02.2024, 10:32 | |
|
Помогаю со студенческими работами здесь
10
QSerialPort принимает только один байт Команда атd звонок проходит один раз Напишите процедуру, которая принимает один параметр Команда отправленная по TCP/IP выводится только один раз Всегда проблемы с роутерами. Ни один роутер не принимает детей Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|