Linux ကိုအသုံးပြုခြင်းတစ်ဦးကဖိုင်မှတ်တမ်းစေရန်တစ်ဦးက Patch Apply လုပ်နည်း

ဒီလမ်းညွှန် program တစ်ခုသို့မဟုတ်ဖိုင်တစ် patch ကိုလျှောက်ထားဘို့အခြေခံခြုံငုံသုံးသပ်ချက်ပေးသည်။

ပြင်ဆင်ဖာထေးမှုများလျှောက်ထားမှုအတွက်အသုံးပြုသော command ကတော့ patch ကို command တစ်ခုဖြစ်သည်ဒါပေမယ့် patch ကိုလျှောက်ထားနိုင်ရန်အတွက် အဆိုပါကွဲပြားမှု command ကို လည်းပြင်ဆင်ထားရန်လိုအပ်ပါသည်သောကွဲပြားခြားနားမှုထောက်ပံ့ဖို့အသုံးပြုခံရဖို့လိုအပ်ပါတယ်။

အဘယ်ကြောင့်သင်ကတစ်ဦးက Patch ကိုဖန်တီးပေးနိုင်မလား

သငျသညျရှိခဲ့မြင်ယောင်ကြည့်ပါ တစ်က HTML ဖိုင်ကို အောက်ပါအတိုင်း:



<ခေါင်းစဉ်> MySite


ကကွိုဆို MySite ရန်

ဝဘ်ဘရောက်ဇာသို့တင်ဆောင်လာသောအခါအထက်ပါအရင်းအမြစ်စကားတို့ကို "MySite မှလှိုက်လှဲစွာကြိုဆိုပါသည်" ကိုပြသပါလိမ့်မယ်။

တူညီတဲ့ဖိုင်မျိုးစုံဗားရှင်းဖြစ်ရှိဘို့ programming အခါဘုံဖြစ်ပါတယ်။ ဥပမာအားဖြင့်လက်ရှိတိုက်ရိုက်ဗားရှင်းဖြစ်သောတဦးတည်းဗားရှင်းရှိပါလိမ့်မယ်, မျိုးစုံအပြောင်းအလဲများကိုမဆံ့နိုငျတယျ, နောက်ဆုံးတွင်လွှတ်ပေးနျဌာနခှဲအပေါ်အခြားဗားရှင်းရှိစေခြင်းငှါ, သောဖှံ့ဖွိုးတိုးတနျဌာနခှဲအပေါ်အခြားဗားရှင်းရှိပါလိမ့်မယ်။

အဆိုပါဖြန့်ချိနျဌာနခှဲအစစ်အမှန်အသုံးပြုသူများသည် (ဆိုလိုသည်မှာအဆိုပါ MySite က်ဘ်ဆိုက်အားဤကိစ္စတွင်ဧည့်သည်များအတွက်) အသုံးပြုတဲ့ version ကိုပါလိမ့်မယ်။ ကျွန်တော်တို့ကို MySite ဗားရှင်း 1.0 မှာဖြစ်ပါတယ်ဟုပြောကြပါစို့။ ဖွံ့ဖြိုးရေးအဆင့်ပြီးနောက်သင်ဤကိစ္စတွင် 1.1 အတွက်ဖြစ်လိမ့်မည်ဟုသောလွှတ်ပေးရန်နျဌာနခှဲဖန်တီးပါလိမ့်မယ်။ ကဗားရှင်း 1,2 အတွက်လွှတ်ပေးရန်ကြောင့်မဟုတ်ပေမယ့်ဗားရှင်း 1.1 ဘို့ဖြစ်လိမ့်မည်ဟုအပြောင်းအလဲများကိုပါဝင်နိုင်သောကွောငျ့ဖွံ့ဖြိုးတိုးတက်ရေးဌာနခှဲကရှေ့ဆက်လွှတ်ပေးရန်ဌာနခွဲဖြစ်နိုင်ပါတယ်ပါလိမ့်မယ်။

MySite YourSite ဟုခေါ်ဝေါ်ခြင်းကိုခံရသင့်ပါတယ်မထွက်ရတဲ့ bug ကိုရှိခဲ့သည်ဆိုပါစို့။ သငျသညျအလှည့်စီဌာနခွဲကိုသွားနှင့်တိုက်ရိုက်ဗားရှင်းအပြောင်းအလဲများကိုလုပ်နိုင်ကြောင်း, သင်၏ဖွံ့ဖြိုးတိုးတက်ရေးကိုဗားရှင်းများနှင့်ဖြန့်ချိဗားရှင်းတိုက်ရိုက်ထုတ်လွှအတွက်ပူပြင်းတဲ့ပြင်ဆင်ချက်အတိုင်းပြောင်းလဲမှုဖြစ်စေထို့နောက်ဖွံ့ဖြိုးရေးနှင့်ဖြန့်ချိအကိုင်းအခက်ဖို့ patch ကိုလျှောက်ထားနိုင်ပါတယ်။

တစ်ဦးကအလုပ်လုပ်ခဲ့ဥပမာ

အထဲတွင်အောက်ပါကုဒ်တွေနဲ့ myfile.html လို့ခေါ်တဲ့ဖိုင် Create:



<ခေါင်းစဉ်> MySite


ကကွိုဆို MySite ရန်

ဒါက source code ကိုပြင်ဆင်ရန်မှာ၏အလုပ်ဥပမာဖြစ်ပါတယ်။

အထဲတွင်အောက်ပါကုဒ်တွေနဲ့ myfile_v2.html ဟုခေါ်တွင်သည်အခြားဖိုင် Create:



<ခေါင်းစဉ်> YourSite


ကကွိုဆို YourSite ရန်

ဒါက source code ကိုပြင်ဆင်ရန်မှာ၏အလုပ်ဥပမာဖြစ်ပါတယ်။

ပထမဦးဆုံးဖိုင်တည် "MySite မှလှိုက်လှဲစွာကြိုဆိုပါသည်" နဲ့မူရင်းဝဘ်စာမျက်နှာဖြစ်ပါသည်။ ဒုတိယဖိုင်စာသားထဲမှာ YourFile မှအမည်ပြောင်းဖြစ်ပါတယ် MyFile မှလွဲ. ပထမဦးဆုံးဖိုင်အဖြစ်အတူတူပင်ဖြစ်ပါသည်။

အဆိုပါကွဲပြားမှုဖိုင်မှတ်တမ်း Create ရန်ကဘယ်လို

တစ်ဦး patch ကိုဖန်တီးနိုင်ရန်အတွက်ကျနော်တို့ myfile.html နှင့် myfile_v2.html အကြားခြားနားချက်များကိုထုတ်လုပ်ကိုင်ဖို့လိုအပ်ပါတယ်။

အောက်မှာဖေါ်ပြတဲ့အတိုင်းကျနော်တို့ကကွဲပြားမှု Command ဖြင့်ဤသို့ပြုနိုင်သည်

ကွဲပြားမှု -u myfile.html myfile_v2.html> myfile.patch

သငျသညျအတွက် myfile.patch file ကိုဖွင့်နိုင်သည် အဆိုပါ nano အယ်ဒီတာ အောက်ပါအတိုင်းပြုလုပ်ကြည့်ရှုရန်အလို့ငှာ:

nano myfile.patch

မပြောင်းလဲဖြစ်ကြောင်းလိုင်းများအပြာမှာပြနေကြသည်။ ဖယ်ရှားခဲ့ကြကြောင်းလိုင်းများအနီရောင်ပြနေကြသည်နှင့်ထည့်ပြီးပါပြီကြောင်းလိုင်းများအစိမ်းရောင်ပြနေကြသည်။

အဆိုပါ Patch စစ်ဌာနချုပ်အသုံးပြုခြင်းအဆိုပါ Patch Apply လုပ်နည်း

အောက်ပါ command ကိုသုံး myfile.html ဖို့ patch ကိုလျှောက်ထားရန်:

patch ကို

တစ်ဦးက Patch ပြန်ပြောင်းနည်း

ဤသည်မူလဖိုင် myfile.html ဖို့ကွဲပြားမှု command ကို အသုံးပြု. ဖန်တီးအပြောင်းအလဲများကိုလျှောက်ထားပါလိမ့်မယ်။

သငျသညျ myfile.html နောက်ကျောကမူလကအောက်ပါ command ကိုသုံးခဲ့ပါတယ်လမ်းကြောင်းကိုဒါ patch ကိုပြန်ပြောင်းလိုပါက:

patch ကို -r

အကျဉ်းချုပ်

အဆိုပါ patch ကို command ကိုတစ်ဖွဲ့လုံးက directory structure ကိုဖြတ်ပြီးပြင်ဆင်ဖာထေးမှုများလျှောက်ထားရန်အသုံးပြုနိုင်ပါသည်။

ပြင်ဆင်ဖာထေးမှုများဖန်တီးခြင်းနှင့်ကောင်းသောအရင်းအမြစ်ထိန်းချုပ်မှုသေချာများအတွက် patch ကို command ကိုထက်ဝေးပိုကောင်း tools တွေရှိပါတယ်။

ဤမျှလောက်များစွာသောဖွံ့ဖြိုးရေးစီမံကိန်းအရင်းအမြစ်ထိန်းချုပ်ရေးအတွက် Git အသုံးပြုသည့်အကြောင်းပြချက်ရှိပါသည်။ Git တစ်တသမတ်တည်းစိမျးမဟာဗျူဟာကိုဖန်တီးရန်လွယ်ကူစေသည်။

အဆိုပါ patch ကို command ကိုတစ်ကား Bash Script ကိုသို့မဟုတ်ရိုးရှင်းတဲ့အရာတစ်ခုခုမှခြားနားချက်များလျှောက်ထားမှုအတွက် ok ဒါပေမယ့်သင်ရုံအဖြစ်လွယ်ကူစွာသင် patch နဲ့ရိုးရှင်းစွာတူညီတဲ့အရပျသို့အသစ်ကဖိုင်တွေကော်ပီကူးရန်ဆန္ဒရှိဖိုင်တွေကို backup ကော်ပီတခုဖန်တီးနိုင်ဘူး။

ပိုမိုသိရှိလိုပါကလူကို command ကိုသုံး:

လူကို patch ကို