Panduan ini memberikan gambaran umum untuk menerapkan patch ke program atau file.
Perintah yang digunakan untuk menerapkan tambalan adalah perintah tambalan tetapi untuk menerapkan tambalan, perintah diff juga perlu digunakan untuk menyediakan perbedaan yang perlu ditambal.
Mengapa Anda Akan Membuat Patch
Bayangkan Anda memiliki file HTML sebagai berikut:
Selamat Datang di MySite
Sumber di atas, saat dimuat ke browser web, akan menampilkan kata "Selamat Datang di MySite".
Adalah umum ketika memprogram untuk ada beberapa versi dari file yang sama. Misalnya akan ada satu versi yang merupakan versi live saat ini, akan ada versi lain di cabang pengembangan yang mungkin berisi beberapa perubahan, akhirnya, mungkin ada versi lain di cabang rilis.
Cabang rilis akan menjadi versi yang digunakan oleh pengguna sebenarnya (yaitu dalam hal ini pengunjung ke situs web MySite). Mari kita katakan bahwa MySite berada pada versi 1.0. Setelah fase pengembangan, Anda akan membuat cabang rilis yang akan ada dalam kasus ini 1.1. Cabang pengembangan akan berada di depan cabang rilis karena mungkin berisi perubahan yang tidak dijadwalkan untuk dirilis di versi 1,2 tetapi akan untuk versi 1.1.
Bayangkan ada bug dimana MySite harus disebut YourSite. Anda dapat pergi ke setiap cabang secara bergantian dan membuat perubahan pada versi langsung, versi pengembangan dan versi rilis dari Anda dapat membuat perubahan sebagai perbaikan terbaru secara langsung dan kemudian menerapkan patch ke pengembangan dan rilis cabang.
Contoh yang Berfungsi
Buat file bernama myfile.html dengan kode berikut di dalamnya:
Selamat Datang di MySite
Ini adalah contoh yang berhasil untuk menambal kode sumber.
Buat file lain bernama myfile_v2.html dengan kode berikut di dalamnya:
Selamat Datang di YourSite
Ini adalah contoh yang berhasil untuk menambal kode sumber.
File pertama adalah halaman web asli dengan judul "Selamat Datang di MySite". File kedua sama dengan file pertama kecuali MyFile berganti nama menjadi YourFile dalam teks.
Cara Membuat File Diff
Untuk membuat patch, kita perlu mencari perbedaan antara myfile.html dan myfile_v2.html.
Kita bisa melakukan ini dengan perintah diff sebagai berikut:
diff -u myfile.html myfile_v2.html> myfile.patch
Anda dapat membuka file myfile.patch di editor nano sebagai berikut untuk melihatnya: nano myfile.patch
Garis yang tidak berubah ditunjukkan dengan warna biru. Garis yang telah dihapus ditampilkan dalam warna merah dan garis yang telah ditambahkan ditampilkan dalam warna hijau. Untuk menerapkan patch ke myfile.html gunakan perintah berikut: tambalan <myfile.patch Ini akan menerapkan perubahan yang dibuat menggunakan perintah diff ke file asli myfile.html. Jika Anda ingin mengembalikan patch agar myfile.html kembali seperti semula, gunakan perintah berikut: tambalan -R <myfile.patch Perintah tambalan dapat digunakan untuk menerapkan tambalan di seluruh struktur direktori. Ada alat yang jauh lebih baik daripada perintah tambalan untuk membuat tambalan dan memastikan kontrol sumber yang baik. Ada alasan bahwa begitu banyak proyek pengembangan menggunakan GIT untuk kontrol sumber. GIT membuatnya mudah untuk membuat strategi percabangan yang konsisten. Perintah tambalan ok untuk menerapkan perbedaan ke bash script atau sesuatu yang sederhana tetapi Anda bisa dengan mudah membuat salinan cadangan dari file yang ingin Anda patch dan cukup salin file baru ke tempat yang sama. Untuk informasi lebih lanjut, gunakan perintah man: man patch Cara Mendaftar Patch Menggunakan Perintah Patch
Cara Memulihkan Kembali Patch
Ringkasan