LINUX.ORG.RU

Программа patch не тот файл пытается пропатчить


0

1

В файле 1.hpp добавил строчку. 0.hpp оригинальный файл.

diff -c 0.hpp 1.hpp > new.patch

patch -i new.patch -o 0.hpp

Какого х... он пишет:

patching file 0.hpp
Reversed (or previously applied) patch detected!  Assume -R? [n] 
Apply anyway? [n] 
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file 0.hpp.rej

Я ему вроде явно указал из какого файла в какой надо перенести изменения! Он думает умный, что ли очень? Делает то что нужно с ключиком -f, но ошибку всё равно выдаёт.

★★★★

Последнее исправление: keeper_b (всего исправлений: 1)

man diff

man patch

anonymous
()

ты пытаешься пропатчить b, а не a. то есть, файл, над которым ты работал, чтобы получить патч.
именно по этому тебе предлагают -R

и не матерись тут. лучше маны читай.

aol ★★★★★
()
Последнее исправление: aol (всего исправлений: 1)

Правильно он тебе все патчит. Ты создал патч для превращения 0.hpp в 1.hpp и потом пытаешься пропатчить 1.hpp, в котором эти изменения уже есть.

BaBL ★★★★★
()

Пардон я перепутал название когда сюда постил.

Там должно быть «patch -i new.patch -o 0.hpp»

Уже поправил.

keeper_b ★★★★
() автор топика
Последнее исправление: keeper_b (всего исправлений: 1)
Ответ на: комментарий от BaBL

На это тоже ругается.

patching file 2.hpp (read from 0.hpp)
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file 2.hpp.rej

keeper_b ★★★★
() автор топика
Последнее исправление: keeper_b (всего исправлений: 1)
Ответ на: комментарий от keeper_b
aol@hp:/tmp$ cat original modified 
qwe
qawsed
aol@hp:/tmp$ diff -c original modified > new.patch
aol@hp:/tmp$ cat new.patch 
*** original	2012-10-23 16:00:23.729203547 +0400
--- modified	2012-10-23 15:59:45.649205141 +0400
***************
*** 0 ****
--- 1 ----
+ qawsed
aol@hp:/tmp$ patch -i new.patch -o original 
patching file original
aol@hp:/tmp$ cat original 
qawsed
aol@hp:/tmp$ 

чяднт?

aol ★★★★★
()
Ответ на: комментарий от keeper_b

Там должно быть «patch -i new.patch -o 0.hpp»

В твоём случае результат выполнения этой команды может быть очень непредсказуемым. Вплоть до

cat file >file
=)

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.