Rumah >Tutorial sistem >LINUX >Pemahaman mendalam tentang fail tampalan: penjanaan arahan berbeza dan analisis parameter biasa

Pemahaman mendalam tentang fail tampalan: penjanaan arahan berbeza dan analisis parameter biasa

PHPz
PHPzasal
2024-06-27 08:35:46603semak imbas

深入了解 patch 文件:diff 指令生成与常用参数解析

fail patch dijana oleh arahan diff (linuxdiff, svndiff, gitdiff, gitformat-patch).

Mula-mula, mari perkenalkan perintah diff dan parameter biasanya:

perbezaan:

Fungsi diff adalah untuk membandingkan perbezaan antara dua fail dan kemudian merekodkannya, iaitu apa yang dipanggil diff patch. Format ayat: diff [pilihan] fail sumber (folder) fail destinasi (folder) Sistem pengendalian Linux adalah baik, ia adalah untuk menampal fail sumber (folder) linux patchMarco linux untuk menjadikannya ke dalam fail destinasi (klip), istilahnya ialah "naik taraf". Tiga pilihan yang paling biasa digunakan diperkenalkan di bawah:

-r ialah pilihan rekursif Jika anda menetapkan pilihan ini linux untuk menampal, diff akan membandingkan semua fail yang sepadan dalam direktori kod sumber dua versi yang berbeza sekaligus, termasuk fail subdirektori.

Pilihan

-N memastikan bahawa fail tampalan akan mengendalikan situasi di mana fail telah dibuat atau dipadamkan dengan betul.

Pilihan

-u mencipta fail tampalan dalam format bersatu yang lebih padat daripada format lalai.

2、tampalan

—————————————————————————

linux 打patch_linux 打patch_linux 打patch

NAMA

patch-applyadifffiletoanoriginal

SINOPSIS

patch[pilihan][fail asal[fail patch]]

tapi selalunya

tampal-pnum

—————————————————————————

Ringkasnya, patch adalah menggunakan patch yang dibuat oleh diff untuk menukar fail sumber (folder) dan fail destinasi (folder). Ini bermakna anda boleh mempunyai fail sumber (folder)->fail destinasi (folder), atau fail destinasi (folder)->fail sumber (folder). Berikut adalah beberapa pilihan yang paling biasa digunakan:

Pilihan

-p0 adalah untuk mencari fail destinasi (folder) dari direktori semasa

Pilihan

-p1 mengabaikan direktori tahap pertama dan mula mencari dari direktori semasa.

Pilihan -p2 yang serupa harus mengabaikan direktori tahap kedua

......

************************************************ ***** *************

Berikut adalah contoh:

---lama/modul/pcitableMonSep2711:03:561999

+++baru/modul/pcitableTueDis1920:05:412000

Jika anda menggunakan parameter -p0, ini bermakna mencari folder yang dipanggil lama daripada direktori semasa, dan cari fail pcitable di bawah modul di bawahnya untuk melaksanakan operasi tampalan.

Jika anda menggunakan parameter -p1, ini bermakna mengabaikan direktori peringkat pertama (iaitu, tidak kira yang lama), mencari folder modul dari direktori semasa dan mencari pcitable di bawahnya. Premis untuk ini ialah direktori semasa mestilah direktori di mana modul berada. Fail patch diff boleh berada di mana-mana lokasi, selagi laluan ke fail patch diff ditentukan. Malah, anda boleh menggunakan laluan relatif atau laluan mutlak. Tetapi saya biasanya menggunakan laluan relatif.

************************************************ ***** *************

Pilihan

-E menunjukkan bahawa jika fail kosong ditemui, padamkannya

Pilihan

-R menunjukkan bahawa fail "baru" dan fail "lama" dalam fail tampalan kini akan ditukar (sebenarnya, ia adalah untuk menampal versi baharu dan menjadikannya versi lama)

linux 打patch_linux 打patch_linux 打patch

Struktur fail tampalan

Kepala tampal

Pengepala tampalan ialah dua baris bermula dengan ---/+++, yang mewakili fail yang akan ditampal. Permulaan --- mewakili fail lama, dan permulaan +++ mewakili fail baharu.

Berbilang patch dalam satu fail patch

Fail tampalan mungkin mengandungi banyak bahagian bermula dengan ---/+++ dan setiap bahagian digunakan untuk menggunakan tampalan. Jadi fail patch boleh mengandungi banyak patch.

Sekat

Blok ialah tempat untuk menukar dalam tampalan. Ia biasanya bermula dan berakhir dengan sesuatu yang tidak perlu diubah. Ia hanya digunakan untuk menunjukkan lokasi yang akan ditukar. Mereka biasanya bermula dengan @@ dan berakhir dengan permulaan blok lain atau pengepala tampalan baharu.

linux 打patch_linux 打patch_linux 打patch

Sekat lekukan

Blok

akan diinden oleh satu lajur dan lajur ini digunakan untuk menunjukkan sama ada garisan itu perlu diturunkan atau dipadamkan.

Lajur pertama blok

Tanda

+ menunjukkan bahawa baris ini perlu ditambah.

Tanda

- menunjukkan bahawa baris ini harus dipadamkan.

Tiada tanda tolak atau tanda negatif bermakna ia hanyalah rujukan dan tidak perlu diubah.

Penggunaan:

patch-p0

patch-p1

Atas ialah kandungan terperinci Pemahaman mendalam tentang fail tampalan: penjanaan arahan berbeza dan analisis parameter biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn