Le Guide de dix minutes à diff et patch

Situation un: vous essayez de compiler un paquet de source et vous découvrez que quelqu'un a déjà fait le travail pour vous de le modifier légèrement pour compiler sur votre système. Ils ont fait leur travail disponible en tant que « patch », mais vous ne savez pas comment faire usage. La réponse est que vous appliquez le correctif au code source d'origine avec un outil de ligne de commande appelée, de façon appropriée, patch.







Situation deux: vous avez téléchargé le code source pour un package open source et après une heure ou de modifications mineures, vous parvenez à faire compiler sur votre système. Vous souhaitez faire votre travail à la disposition d'autres programmeurs, ou aux auteurs du paquet sans nouvelle répartition de l'ensemble du paquet modifié. Maintenant, vous êtes dans une situation où vous devez créer un patch de vos propres, et l'outil dont vous avez besoin est diff.

Ceci est un guide rapide pour diff et patch qui vous aidera dans ces situations en décrivant les outils comme ils sont le plus souvent utilisés. Il vous dit assez pour commencer tout de suite. Plus tard, vous pouvez apprendre les tenants et les aboutissants de diff et patch à votre guise, en utilisant les pages de manuel.







Appliquer des patches avec le patch

Pour appliquer un correctif à un seul fichier, changer le répertoire dans lequel se trouve le fichier et le patch appeler:

Ces instructions supposent que le patch est distribué en format unifié, qui identifie le fichier le patch doit être appliqué. Dans le cas contraire, vous pouvez spécifier le fichier sur la ligne de commande:

Vous devez changer le répertoire source de haut niveau avant d'exécuter cette commande. Si un niveau de patch d'un ne permet pas d'identifier correctement les fichiers à patch, inspecter le fichier correctif pour les noms de fichiers. Si vous voyez un nom comme

et vous travaillez dans un répertoire contenant net / http.c, l'utilisation

En général, comptez un pour chaque séparateur de chemin (caractère slash) que vous retirez du début du chemin, jusqu'à ce qu'il en reste est un chemin qui existe dans votre répertoire de travail. Le nombre que vous atteignez le niveau p.

Pour supprimer un patch, utilisez le drapeau -R, à savoir

Création de patches avec diff

L'utilisation diff est simple si vous travaillez avec des fichiers individuels ou des répertoires entiers de source. Pour créer un patch pour un seul fichier, utilisez le formulaire:

Pour créer un patch pour une arborescence entière, faire une copie de l'arbre:

Apportez toutes les modifications nécessaires dans le nouveau répertoire /. Ensuite, créez un patch avec la commande suivante:

C'est tout ce dont vous avez besoin pour commencer avec diff et patch. Pour plus d'utilisation de l'information:

traductions

Cet article a été traduit et réédité dans les langues suivantes:







Articles Liés