Forking (software fork)

Forking ဆိုသည္မွာ open source program တစ္ခုမွ source code ရယူၿပီး program အသစ္တစ္ခုလံုးကို တိုးတက္ေျပာင္းလဲေအာင္ ျပဳလုပ္ျခင္း ျဖစ္သည္။

Forking သည္ တစ္ခါတစ္ရံတြင္ open source စီမံကိန္းတစ္ခု၏ တိုးတက္မႈမရိွေသာ အေျခအေနတစ္ခုေၾကာင့္ လုပ္ေဆာင္ခ်က္အားလံုး ရပ္ဆိုင္းတာမ်ိဳး ျဖစ္ေစႏိုင္သည္။ ၎သည္ တိုးတက္ဖြံ႕ၿဖိဳးေအာင္ လုပ္ေဆာင္သည့္ အဖြဲ႕ဝင္မ်ားက ပုဂၢိဳလ္ေရးဆိုင္ရာ ပဋိပကၡမ်ားကို ေျဖရွင္းႏိုင္ျခင္း မရိွသည့္အခါ သို႔မဟုတ္ ေနာက္ထပ္ ေျခလွမ္းသစ္မ်ားအတြက္ အမ်ားဆႏၵအရ လုပ္ေဆာင္ႏိုင္ျခင္း မရိွသည့္အခါ ျဖစ္ေပၚေလ့ရိွသည္။

Software fork မ်ားသည္ ၎တို႔၏ ႀကိဳးပမ္းအားထုတ္မႈကို မလိုအပ္ဘဲ ႏွစ္ဆျပဳလုပ္သည့္အခါ အျငင္းပြားဖြယ္ရာ ျဖစ္လာႏိုင္သည္။ သို႔ေသာ္လည္း fork သည္ open source software ၏ အေကာင္းဆံုး စြမ္းရည္အတြက္ အေရးပါေၾကာင္း developer အမ်ားစုကလက္ခံထားၾကသည္။ ေအာင္ျမင္သည့္ fork တစ္ေယာက္သည္ တိုးတက္ ဖြံ႕ၿဖိဳးရန္ လုပ္ေဆာင္သည့္ အခ်ိန္မ်ားကို သက္သာေစႏိုင္ၿပီး code အေဟာင္းႏွင့္ စီးပြားေရးလုပ္ငန္း အခြင့္အလမ္းသစ္မ်ား ဖန္တီးျခင္းအတြက္ လံႈ႕ေဆာ္မႈမ်ား ျဖစ္ေပၚေစသည္။

Fork တစ္ေယာက္ ျဖစ္ရန္အတြက္ software ဗားရွင္းသစ္တြင္ ကိုယ္ပိုင္အမည္ႏွင့္ ကိုယ္ပိုင္ developer အသိုက္အဝန္းရိွရန္ လိုအပ္သည္။ Program သစ္အေနျဖင့္ မူလ program ျဖင့္ တြဲဖက္အသံုးျပဳႏိုင္ပါက ၎ကို shallow fork ဟု ေခၚဆိုႏိုင္သည္။