Skip to main content

Cara Memohon Patch ke Fail Menggunakan Linux

Cara mengatasi no such file or directory pada termux (April 2025)

Cara mengatasi no such file or directory pada termux (April 2025)
Anonim

Panduan ini menyediakan gambaran asas untuk memohon patch ke program atau fail.

Perintah yang digunakan untuk memohon patch adalah perintah patch tetapi untuk memohon patch perintah diff juga perlu digunakan untuk membekalkan perbezaan yang perlu ditambal.

Mengapa Anda Buat Patch

Bayangkan anda mempunyai fail HTML seperti berikut:

MySite

Selamat Datang Ke MySite

Sumber di atas, apabila dimasukkan ke dalam pelayar web, akan memaparkan perkataan "Selamat Datang ke MySite".

Ia adalah perkara biasa apabila pengaturcaraan untuk menjadi berbilang versi fail yang sama. Sebagai contoh, akan ada satu versi yang merupakan versi langsung semasa, terdapat satu lagi versi di cawangan pembangunan yang mungkin mengandungi banyak perubahan, akhirnya, mungkin ada versi lain pada cawangan pembebasan.

Cawangan pembebasan akan menjadi versi yang digunakan oleh pengguna sebenar (i.e dalam kes ini pengunjung ke laman web MySite). Marilah kita mengatakan bahawa MySite adalah pada versi 1.0. Selepas fasa pembangunan, anda akan mencipta cawangan pembebasan yang akan dalam kes ini 1.1. Cabang pembangunan akan berada di hadapan cawangan pelepasan kerana ia mungkin mengandungi perubahan yang tidak sepatutnya dibebaskan dalam versi 1,2 tetapi akan menjadi versi 1.1.

Bayangkan ada pepijat di mana MySite harus dipanggil YourSite. Anda boleh pergi ke setiap cawangan seterusnya dan membuat perubahan kepada versi langsung, versi pembangunan dan versi pelepasan anda boleh membuat perubahan itu sebagai perbaikan terbaru secara langsung dan kemudian memohon patch untuk pembangunan dan pembebasan cawangan.

Contoh Kerja

Buat fail yang dipanggil myfile.html dengan kod berikut di dalamnya:

MySite

Selamat Datang Ke MySite

Ini adalah contoh kerja menampal kod sumber.

Buat fail lain yang dipanggil myfile_v2.html dengan kod berikut:

YourSite

Selamat Datang Ke YourSite

Ini adalah contoh kerja menampal kod sumber.

Fail pertama ialah halaman web asal dengan tajuk "Selamat datang ke MySite". Fail kedua adalah sama dengan fail pertama kecuali MyFile dinamakan semula kepada YourFile dalam teks.

Bagaimana Membuat Fail Diff

Untuk membuat patch, kita perlu membuat perbezaan antara myfile.html dan myfile_v2.html.

Kita boleh melakukan ini dengan perintah diff seperti berikut:

diff -u myfile.html myfile_v2.html> myfile.patch

Anda boleh membuka fail myfile.patch dalam editor nano seperti berikut untuk melihatnya:

nano myfile.patch

Garis yang tidak berubah diperlihatkan dengan warna biru. Baris yang telah dialih keluar ditunjukkan dengan warna merah dan garisan yang telah ditambah ditunjukkan dalam warna hijau.

Cara Memohon Patch Menggunakan Perintah Patch

Untuk memohon patch ke myfile.html gunakan arahan berikut:

patch <myfile.patch

Bagaimana Mengembalikan Patch

Ini akan menggunakan perubahan yang dibuat menggunakan perintah diff untuk fail asal myfile.html.

Sekiranya anda ingin memulihkan patch supaya myfile.html kembali kepada cara asalnya, gunakan perintah berikut:

patch -R <myfile.patch

Ringkasan

Perintah patch boleh digunakan untuk memohon patch di seluruh struktur direktori.

Terdapat alat yang jauh lebih baik daripada arahan patch untuk membuat patch dan memastikan kawalan sumber yang baik.

Terdapat sebab bahawa banyak projek pembangunan menggunakan GIT untuk kawalan sumber. GIT memudahkan untuk mencipta strategi cawangan yang konsisten.

Arahan patch adalah ok untuk memohon perbezaan ke skrip bash atau sesuatu yang mudah tetapi Anda dapat dengan mudah membuat salinan sandaran fail yang anda ingin patch dan hanya menyalin fail baru ke tempat yang sama.

Untuk maklumat lanjut, gunakan arahan lelaki:

patch lelaki