Re: application patch
Selon messmate <messmate@free.fr>:
| On Tue, 29 Mar 2005 10:34:13 +0200
| tnemeth@free.fr wrote:
|
| > | J'ai là un texte en clair que je dois appliquer en tant que patch
| à
| > | mon postfix 2.2.
| > | Quelqu'un se souviens comment faire ?
| >
| > Est-ce que "lire la page de man de patch" te dit quelquechose ?
|
| OUI...
Ah :)
Bin fallait regarder dedans directement, ça aurait été plus simple.
| > patch -pX < fichier-patch.diff
| >
| > Avec X == le niveau de patch (généralement 0).
|
| Voilà:
| patch -p0 cleanup_message.c cleanup_message.diff
Erk. Je n'ai jamais aimé cette façon de l'utiliser :)
| patching file cleanup_message.c
| Hunk #1 FAILED at 296.
| Hunk #2 succeeded at 307 with fuzz 1 (offset -2 lines).
| Hunk #3 FAILED at 321.
| Hunk #4 FAILED at 339.
| Hunk #5 FAILED at 364.
| Hunk #6 FAILED at 392.
| Hunk #7 FAILED at 400.
| Hunk #8 FAILED at 455.
| Hunk #9 FAILED at 670.
| 8 out of 9 hunks FAILED -- saving rejects to file
| cleanup_message.c.rej
Vérifie que le patch que tu appliques est bien pour la version
du logiciel que tu as installé. Visiblement il trouve le fichier
malgré ta ligne de commande un peu cavalière, et il réussi à
appliquer un morceau du patch (le hunk #2) mais pas les autres.
C'est généralement dû à 2 choses :
- le mec qui a pondu le patch l'a fait avec les pieds.
- le source que tu essayes de patcher a été modifié entre le
moment où le patche a été créé et celui où tu l'appliques.
Le derniers cas m'est souvent arrivé en tentant de patcher le
noyau avec des trucs bizarres. Il arrive souvent, dans ces cas-là,
qu'en plus, le mec qui a pondu le diff, n'utilise pas toutes les
options qui pourraient aider l'utilisateur du patch (en
particulier l'option de diff qui permet d'indiquer dans quelle
fonction se trouve la modif du "hunk").
Thomas.
Reply to: