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
—————————————————————————
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)
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.
Sekat lekukan
Blokakan 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!