format de fichier de correctif

format de fichier de correctif Linux

«Patch» fait référence à une série de différences entre les fichiers.

Après avoir effectué des modifications sur la base du fichier d'origine, un fichier patch est généré (à l'aide de la commande diff) en fonction des modifications effectuées.

Une personne qui détient le fichier d'origine applique le correctif au fichier d'origine (à l'aide de la commande patch), et il devient un fichier modifié.

1. Créez deux fichiers d'expérimentation

  • Fichier original: 1.txt
this is a test
for patch file format
so let us go!
  • Fichier modifié: 2.txt
this is a test
for linux patch file format
so let us go!
learn it

2. Générez des fichiers de correctifs

diff -u 1.txt 2.txt > diff.patch

vim diff.patch

Le contenu du fichier de correctif généré est le suivant:

1 --- 1.txt       2020-07-20 16:45:27.131654289 +0800
2 +++ 2.txt       2020-07-20 16:46:26.348728016 +0800
3 @@ -1,3 +1,4 @@
4  this is a test
5 -for patch file format
6 +for linux patch file format
7  so let us go!
8 +learn it

3. En-tête de patch

1 --- 1.txt       2020-07-20 16:45:27.131654289 +0800
2 +++ 2.txt       2020-07-20 16:46:26.348728016 +0800

"-" signifie l'ancien fichier (fichier d'origine)

"+++" signifie nouveau fichier (fichier modifié)

L'en-tête du correctif enregistre le nom de fichier et l'heure de création du fichier d'origine et du fichier modifié.

4. Bloquer

Les blocs du patch sont utilisés pour illustrer les changements dans le fichier. Ils commencent généralement par @@开始,结束于另一个块的开始或者一个新的补丁头.

3 @@ -1,3 +1,4 @@
4  this is a test
5 -for patch file format
6 +for linux patch file format
7  so let us go!
8 +learn it

5. Bloquer l'indentation

3 @@ -1,3 +1,4 @@
4  this is a test
5 -for patch file format
6 +for linux patch file format
7  so let us go!
8 +learn it

Le bloc sera mis en retrait d'une colonne. Il existe trois cas pour cette colonne:

  • La ligne commençant par "-" signifie que le changement de ligne n'existe que dans le fichier d'origine, comme la ligne 5

  • La ligne commençant par «+» signifie que le changement de ligne n'existe que dans le fichier modifié, comme la ligne 6 et la ligne 8.

  • La ligne commençant par un espace indique que la ligne modifiée existe à la fois dans le fichier d'origine et dans le fichier modifié, comme les lignes 4 et 7

Du point de vue du correctif, cette colonne est utilisée pour indiquer si cette ligne doit être ajoutée ou supprimée;

  • La ligne commençant par "-" doit être supprimée

  • Les lignes commençant par "+" doivent être ajoutées

  • Les lignes commençant par des espaces restent inchangées

Je suppose que tu aimes

Origine blog.csdn.net/sunxiaopengsun/article/details/114031738
conseillé
Classement