Применение файла .patch - PullRequest
2 голосов
/ 07 августа 2011

Я хочу применить файл .patch к одному файлу.Я поместил оба в одну папку, и я попробовал это

trinity@Zion ~/Desktop $ patch -i lalala.patch 
patching file install.sub
patch unexpectedly ends in middle of line
Hunk #1 FAILED at 1562.
1 out of 1 hunk FAILED -- saving rejects to file install.sub.rej

Но, как вы видите на выходе, это не удалось.Содержимое install.sub.rej - это в основном весь код из lalala.patch. Я пробовал похожие команды, но получил те же результаты.Я предполагаю, что делаю что-то не так.

Я знаю, что применение патча - это всего лишь 1 команда, но я так растерялся в этом.Если кто-то говорит мне команду или напрямую исправляет файл (а также говорит мне команду), спасибо

оригинальный файл http://pastebin.com/raw.php?i=PKru8m5r исправление: http://pastebin.com/raw.php?i=kkMUHtj8

1 Ответ

1 голос
/ 07 августа 2011

Ваша команда исправления в порядке.Проблема связана с самим файлом исправления (по крайней мере, для меня (Kubuntu 11.04), поскольку, глядя на ссылку, которую вы дали в комментарии, все файлы исправлений содержат одинаковую ошибку ...?!)

Чтобы решить эту проблему для меня, найдите эту строку в файле исправления:

@@ -1562,6 +1562,8 @@ set_timezone() {

и удалите часть set_timezone() {, а ошибка, которую вы описали, исчезла.

Эта часть показываетфункция, где изменения сделаны.Если посмотреть на патчи на странице, которую вы дали в своем комментарии, это показывает, что все они содержат эту дополнительную информацию.Насколько я знаю (но я не гуру патча, поэтому, пожалуйста, исправьте меня), это не принимается командой патча по умолчанию.

(К сожалению, ваш патч все еще не работает и ожидаемые строки в патчефайл по сравнению с исходным файлом не совпадает ...)

...