Comment appliquer un correctif Perforce?
J'ai généré un patch il y a quelques temps à l'aide de la p4 diff
commande.
Cependant, maintenant que je tiens à l'appliquer, je me rends compte qu'il n'existe aucun moyen d'appliquer un patch en Perforce.
Depuis je n'ai pas utilisé le -du
option, le patch est dans cet obscur perforce format et ne peut pas être appliquée avec patch(1)
. Les changements initiaux ont été perdus. Aussi, ce patch est de plus de 300 ko depuis longtemps afin de manuels d'édition n'est pas vraiment une option.
Quelles sont mes options ? Sont là patch convertisseurs, ou certains Perforce extension permettant l'application de ces sortes de patchs ?
source d'informationauteur slaphappy
Vous devez vous connecter pour publier un commentaire.
Peut-être Perforce est diff format de sortie a changé, mais @RumburaK la réponse n'a pas fonctionné pour moi.
J'ai eu à le modifier pour convertir le
====
en-tête de diff+++
et---
format d'en-tête.infile.txt a été généré avec la commande suivante (où 12335 était mis en veilleuse liste de modifications):
p4 describe -du -S 12345
outfile.txt a été appliqué avec la commande suivante:
patch -p3 -l < outfile.txt
Viens de découvrir votre question après l'enregistrement de certaines de mes modifications dans un patch et de revenir afin de tester le code original...
En supposant que vous utilisez un décent émulateur de terminal, cette opération d'une fois pourrait vous prendre jusqu'à une heure.
La bonne chose est que vous ne pouvez pas courir dans cette sur une base quotidienne, comme vous l'avez probablement va maintenant utiliser "-du" a partir de maintenant, au moins moi je suis sûr que je vais.
Il suffit de copier et de coller le nom de fichier comme invité:
Vous aurez peut-être 100 fichiers dans le patch... continuez à cliquer 🙂
Si vous êtes à la recherche d'un subst expression (vim, sed):
Mais méfiez-vous si vous avez ajouté des sources (ensemble de fichiers, p4 ajouter) leur contenu ne sera probablement pas être imprimées dans les diff - dans ce cas, personne ne sera en mesure de re-patcher...
Une autre réponse:La
p4 diff2
commande prend en charge un-u
drapeau de générer des différences dans GNU diff format.De
p4 help diff2
: