ဂစ်တ်(Git)

**ဂစ်တ် ()**  ရေ ဆော့ဖ်ဝဲ တည်ဆောက်စဉ်အတွင်း ရင်းမြစ်ကုဒ်ပြောင်းလဲမှုတိကို ခြီရာခံရန် ဖြန်ဝီထားရေ ဗားသျှင်ထိန်းချုပ်စနစ်(Version Control) ဖြစ်ရေ။ ၎င်းကိုပရိုဂရမ်မာတိအကြား ညှိနှိုင်းဆောင်ရွက်စီရန် ဒီဇိုင်းပြုလုပ်ထားကေလည်း ဇာဖိုင်အစု၌မဆိုပြောင်းလဲမှုတိကို ခြီရာခံရန်အသုံးပြုနိုင်ရေ။ ၎င်းဧရည်မှန်းချက်တိမှာ မြန်နှုန်း၊ အချက်အလက် မှန်ကန်စွာတည်မြဲမှု(data integrity)၊ အချက်အလက်ပြည့်စုံမှု၊ ဖြန်ဝီထားရေ သမရိုးကျ တစ်ဖြောင့်တည်းမဟုတ်ရေ လုပ်ငန်းအလားအလာတိအတွက်အထောက်အပံ့ ပါဝင်ရေ။

Git ကို လီနပ်စ် တောဗောလ်(Linus Torvalds)မှ ၂၀၀၅ ခုနှစ်တွင် လင်းနပ်စ်ကာနယ် ကိုဖွံ့ဖြိုးစီရန်အတွက်ဖန်တီးခရေ။ အခြား ကာနယ်ကုဒ် ရီးသားသူတိက ၎င်းဧကနဦး တိုးတက်မှုကိုအထောက်အကူပြုရေ။ ၂၀၀၅ ခုနှစ်မှစပနာ လက်ဟိပြုပြင်ထိန်းသိမ်းသူမှာ ဂျူနီယို ဟာမာနို ဖြစ်ရေ။ အခြားဖြန်ဝီထားရေ  ဗားသျှင်ထိန်းချုပ်စနစ်(Version Control) တိပိုင်  ဗဟိုထိန်းချုပ်နည်းစနစ်တိနန့်မတူဘဲ ကွန်ပျူတာတိုင်းဟိ Git ရီပိုစစ်တရီ (Repository) ရေ သမိုင်းပြည့်စုံပြီး ဗားသျှင်ခြီရာခံနိုင်စွမ်းအပြည့်အဝဟိပြီး ကွန်ယက်ချိတ်ဆက်မှု(သို့)ဗဟိုဆာဗာရို့မှ အမှီအခိုကင်းရေ။ Git ရေအခမဲ့ဖြစ်ပြီး ရင်းမြစ်မြင်OpenSource ဆော့ဖ်ဝဲရ်ဖြစ်ပြီး GNU General Public License version 2 အရဖြန်ဝီရေ။

## ရာဇဝင်
လင်းနပ်စ်ကာနယ်မှ ဆော့ဖ်ဝဲတည်ဆောက်သူတိအနိန်နန့် ကာနယ်ရင်းမြစ်ကိုထိန်းသိမ်းရန် ယခင်ကအသုံးပြုခရေ ရင်းမြစ်ထိန်းချုပ်မှုစီမံခန့်ခွဲမှုစနစ် BitKeeper အား အသုံးပြုခွင့်ကို စွန့်လွှတ်ပြီးနောက် ၂၀၀၅ ခုနှစ် ဧပြီလတွင် Git  ဗားသျှင်ထိန်းချုပ်စနစ် တည်ဆောက်မှု စီမံကိန်းကို စတင်ခရေ။ BitKeeper မူပိုင်ခွင့်ကိုင်ဆောင်ထားရေ လယ်ရီ မက်ဗွုန်းက အဲန်ဒရူး တရစ်ဂျယ် ရေ BitKeeper ကို ပြောင်းပြန်အင်ဂျင်နီယာနည်းဖြင့် အတုခိုးပနာ SourcePuller ကိုတီထွင်ခရေဟုပြောဆိုပြီး BitKeeperကို အခမဲ့အသုံးပြုခြင်းကို ရုပ်သိမ်းခရေ။ အလားတူအဖြစ်အပျက်ရေ အခြား ဗားသျှင်ထိန်းချုပ်စနစ်တစ်ခုဖြစ်ရေ Mercurial တီထွင်မှုကိုလည်း ဖြစ်အောင်တွန်းအားပီးခသိမ်းရေ။

တော်ဗဲလ်ရေ BitKeeper ပိုင် သူအသုံးပြုနိုင်ရေဖြန်ဝီထားရေ ရင်းမြစ်ထိန်းချုပ်စနစ်တစ်ခုကို လိုချင်ကေလည်း အခမဲ့ရဟိနိုင်ရေဇာစနစ်ကမျှသူဧလိုအပ်ချက်တိနန့်မကိုက်ညီပါ။ တော်ဗဲလ်ရေ ပြင်ဆင်ပြောင်းလဲမှုတစ်ခုကိုပြုရန်နန့် သက်ဆိုင်ရေ metadata တိအားလုံးကို ပြုပြင်မွမ်းမံရန် စက္ကန့် ၃၀ လိုရေဟိပြီးသား ရင်းမြစ်ထိန်းချုပ်ခန့်ခွဲမှုစနစ်တစ်ခုဧ ဥပမာကိုကိုးကားပြီး ၎င်းရေ လင်းနပ်စ်ကာနယ်ဖွံ့ဖြိုးတိုးတက်မှုဧ လိုအပ်ချက်နန့်မကိုက်ညီကြောင်း၊ သူဧဒီဇိုင်းစံသတ်မှတ်ချက်အရ ယင့်ပြင်ဆင်ခြင်းရေ သုံးစက္ကန့်ထက် မပိုစေသင့်ကြောင်းဖော်ပြခရေ။ ထို့အပြင် အောက်ပါ သုံးချက်နန့်လည်း ကိုက်ညီရဖို့ဖြစ်ကြောင်း စံသတ်မှတ်ခရေ-
* စီဗွီအက်စ် (CVS) ရင်းမြစ်ထိန်းချုပ်စနစ်ဧ လုပ်ကိုင်နည်းတိကို မလုပ်သင့်ရေနည်းလမ်းဥပမာအဖြစ်ယူမှတ်ပါ။ အမြဲတမ်းသူနန့် ဆန့်ကျင်ဘက်နည်းကို သုံးပါ။
* BitKeeper ပိုင်ရေ ဖြန်ဝီထားရေ ရင်းမြစ်ထိန်းချုပ်စနစ် လုပ်ငန်းအလားအလာနည်းလမ်းကို လုပ်နိုင်ရဖို့။
* မတော်တဆဖြစ်စီ၊ တမင်တကာဖြစ်စီ ရင်းမြစ်ကို ပျက်စီးပြောက်ဆုံးစေမှုတိ မဖြစ်စီရန် ပြင်းထန်ရေအကာအကွယ်တိထည့်သွင်းပါ။
ယင့်စံနှုန်းတိကြောင့် ထိုစဉ်ကဟိပြီးသားဖြစ်ရေ ရင်းမြစ်ထိန်းချုပ်စနစ်တိအား လင်းနပ်စ်ကာနယ်စီမံကိန်းတွင် အသုံးပြုရန် မဖြစ်နိုင်တော့ပေ။ ယင်းချင့်ကြောင့် လင်းနပ်စ်ကာနယ် ဗားသျှင် 2.6.12-rc ဖြန့်ချိပြီးရေနန့် တော်ဗဲလ်ရေ သူ့ကိုယ်တိုင် ရင်းမြစ်ထိန်းချုပ်စနစ်အသစ်ကို ရီးသားရန် စတင်ခရေ။

Git ကို ၂၀၀၅ ခုနှစ် ဧပြီလ ၃ ရက်နိတွင်စတင်ခရေ။ တော်ဗဲလ်က စီမံကိန်းကို ဧပြီလ ၆ ရက်တွင်ကြေညာခရေ။ ၎င်းရေ ဧပြီလ ၇ ရက်မှစပြီး စီမံကိန်းဧ ရင်းမြစ်တိကို ပြန်လည်သိမ်းဆည်းနိုင်ကြောင်း ပြသခရေ။ ရင်းမြစ်ကိုင်ပေါင်းတိ(git branches)စွာကို ပထမဆုံးပေါင်းစည်းခြင်းရေ ဧပြီ ၁၈ ရက်တွင် ပြုလုပ်နိုင်ခရေ။ တော်ဗဲလ်ရေ သူသတ်မှတ်ထားရေ စွမ်းဆောင်ရည်စံနှုန်းတိကို ဧပြီလ ၂၉ ရက်တွင် အောင်မြင်စွာ သက်သေပြ ရဟိခရေ။ မွေးကင်းစ Git ရေ တစ်စက္ကန့်ကို ၆.၇ ပြင်ဆင်မှု နှုန်းဖြင့် လင်းနပ်စ်ကာနယ်ရင်းမြစ်ဆိုင်ရာ အသုံးပြုမှုတိတွင် စံချိန်တင်လုပ်ဆောင်နိုင်ခရေ။ ဇွန်လ ၁၆ ရက်နိတွင် Git ရေ လင်းနပ်စ်ကာနယ်ဗားသျှင် ၂.၆.၁၂ ထုတ်လွှတ်မှု၌ အသုံးပြုနိုင်ရေ ရင်းမြစ်ထိန်းချုပ်ခန့်ခွဲမှုစနစ် အဖြစ်သို့ ရောက်ဟိခရေ။

တော်ဗဲလ်ရေ ၂၀၀၅ ခုနှစ် ဇူလိုင်လ ၂၆ ရက်နိတွင် စီမံကိန်းအတွက် အဓိကပံ့ပိုးသူ ဂျူနီယို ဟာမာနိုသို့ ရင်းမြစ်ပြုပြင်ထိန်းသိမ်းမှုကို လွှဲပြောင်းပီးခရေ။ ဟာမာနိုရေ ၂၀၀၅ ခုနှစ် ဒီဇင်ဘာ ၂၁ ရက်တွင် Git ဗားသျှင် ၁.၀ ဖြန့်ချိမှုအတွက် တာဝန်ယူခပြီး အခုအချိန်ထိ စီမံကိန်းကို ဆက်လက်ထိန်းသိမ်းသူအနိန်နန့် တာဝန်ယူဆဲဖြစ်ရေ။

## ဒီဇိုင်း
BitKeeper နန့် Monotone ရို့ဧ ဒီဇိုင်းက Git ဧ ဒီဇိုင်းအပေါ် လွှမ်းမိုးမှု ဟိခရေ။ Git ကိုမူလက ရင်းမြစ်ထိန်းချုပ်စနစ်ကို နောက်ကနေထိုင်ပြီး တွန်းပီးသည့်စက်တစ်ခုအနိန်နန့် ထားဟိပြီး၊ ရှေ့ပိုင်း တကယ်အသုံးပြုသူနန့် ထိတွိ့သည့်အပိုင်းကို Cogito (သို့)StGIT အစဟိရေ ရှေ့ထွက်ပရိုဂရမ်တိ(front ends) ကကိုင်တွယ်ပီးရန် ရည်ရွယ်ခရေ။ (အစောပိုင်း ဗားသျှင် Gitမှာ သာမန်အသုံးပြုသူအတွက် လုံးဝမလွယ်ကူကြောင်း စရီးသားသူ တော်ဗဲလ်ကိုယ်တိုင် ပြောခဘူးရေ။) နောက်ပိုင်းကာလတိ၌ Git စီမံကိန်းရေ နောက်ထိုင်စက်ရော ရှေ့အသုံးပြုသူဧ ညွှန်ကြားမှု(command)လက်ခံအပိုင်းရော ပါဝင်တည်ဆောက်ထားရေပြီးပြည့်စုံရေ ရင်းမြစ်ထိန်းချုပ်စနစ်တစ်ခု ဖြစ်လာခရေ။ BitKeeper ဧလွှမ်းမိုးမှုကြီးမားကေလည်း၊ တော်ဗဲလ်ရေ သမားရိုးကျ ရင်းမြစ်ထိန်းချုပ်စနစ်တည်ဆောက်မှု နည်းလမ်းတိကို တမင်တကာရှောင်ရှားခပြီး တစ်မူထူးခြားရေဒီဇိုင်းကို ဦးတည်ကာ Gitကို တည်ဆောက်ခရေ။

### ဝိသေသလက္ခဏာတိ
* သမရိုးကျ တစ်ဖြောင့်တည်းမဟုတ်ရေ ဆော့ဖ်ဝဲရ်တိတည်ဆောက်နည်းကို အထူးသဖြင့် အထောက်အကူပြုခြင်း
* ဗဟိုထိန်းချုပ်မဟုတ်ရေ ဆော့ဖ်ဝဲရ်တိတည်ဆောက်နည်းကို အထောက်အကူပြုခြင်း
* ဟိပြီးသားစနစ်တိ၊ ပရိုတိုကော(protocol)တိနန့် သဟဇာတဖြစ်ခြင်း
* ကြီးမားရေ ဆော့ဖ်ဝဲရ်စီမံကိန်းတိကို ထိရောက်စွာ ကိုင်တွယ်နိုင်ခြင်း
* ပြောင်းလဲမှု ရာဇဝင်ကို မှတ်သားရာ၌ ခရစ်ပတိုဂရပ်ဖင့်(Cryptographic)နည်းဖြင့် စစ်မှန်ကြောင်း အထောက်အထားပြနိုင်ခြင်း
* မော်ဂျူးအစိတ်အပိုင်းငယ်တိကို စုပေါင်းထားရေ (Toolkit-based) ဒီဇိုင်းဖြစ်ခြင်း
* ပေါင်းစည်းမဟာဗျူဟာတိ (merge strategies)ကို ပြောင်းလဲအသုံးပြုနိုင်စီခြင်း
* ဆော့ဖ်ဝဲရ်အတွင်းအမှိုက်တိကို အလိုအလျောက် စုဆောင်းစွန့်ပစ်စနစ်ပါဟိခြင်း
* အချိန်ပိုင်းအလိုက် သျှင်လင်းပြတ်သားစွာ ဆော့ဖ်ဝဲရ်အတွင်းဝတ္ထု(object)တိကို အရွယ်ငယ်အောင် ပြုလုပ်ပီးခြင်း

## အသုံးပြုလာမှုနှုန်း
အီးကလစ် ဖောင်ဒေးသျှင်မှ ၎င်းဧ နှစ်ပတ်လည် လူထုစစ်တမ်းတွင် ၂၀၁၄ မေလအထိ စာရင်းအရ Git ရေယခုအခါ အသုံးအများဆုံး ရင်းမြစ်ထိန်းချုပ်စနစ် ဖြစ်ရေ။ စီးပွားဖြစ်လုပ်ကိုင်ကတ်ရေ ဆော့ဖ်ဝဲရ် တည်ဆောက်သူတိမှ ၄၂.၉% ရေ Git ကို ၎င်းရို့ဧ အဓိက ရင်းမြစ်ထိန်းချုပ်စနစ် အဖြစ်အသုံးပြုကတ်ရေဟု ၂၀၁၄ တွင် ဖြေကြားကတ်ရေ။ ယှဉ်ကြည့်ဖို့ဆိုကေ ၂၀၁၃ တွင် ၃၆.၃%၊ ၂၀၁၂ တွင် ၃၂%သာ ဒေပိုင်ဖြေကြားခရေ။ ထိုစာရင်းမှ ဂစ်တ်ဟပ်ဘ်(GitHub) အသုံးပြုမှုကို ဖယ်ထုတ်လိုက်ကေ - ၂၀၁၄ ခုနှစ်တွင် ၃၃.၃%၊ ၂၀၁၃ တွင် ၃၀.၃%၊ ၂၀၁၂ တွင် ၂၇.၆% နန့် ၂၀၁၁ ခုနှစ်တွင် ၁၂.၈% ဒေပိုင်ဖြေကြားခရေ။ ရင်းမြစ်မြင် စီမံကိန်းတိကို စာရင်းပြုမှတ်တမ်းတင်ရေ ကုမ္ပဏီတစ်ခုဖြစ်ရေဘလက်ခ်ဒတ်ခ်-အိုးပဲန်ဟပ်ဘ်(Black Duck Open Hub)မှလည်း ရင်းမြစ်မြင် စီမံကိန်းတိတွင်လည်း အလားတူ အသုံးပြုလာမှုနှုန်းကို တွိ့ဟိကြောင်း တင်ပြရေ။

စတက်ခ်အိုဗာဖလိုး (Stack Overflow) ရေ သူရို့ဧနှစ်ပတ်လည် ဆော့ဖ်ဝဲရ်တည်ဆောက်သူ စစ်တမ်းတွင် ရင်းမြစ်ထိန်းချုပ်စနစ် အသုံးပြုမှုဆိုင်ရာ မေးခွန်းကိုထည့်သွင်းထားရာ၊ မေးခွန်းဖြေကြားမှု ၂၀၁၅ တွင် (၁၆,၆၉၄ ခု)၊ ၂၀၁၇ တွင် (၃၀,၇၃၀ ခု) နန့် ၂၀၁၈ တွင် (၇၄,၂၉၈ ခု) ဟိခရေ။ Git ရေ ဒေစစ်တမ်းအဖြေတိ၌  ဆော့ဖ်ဝဲရ်တည်ဆောက်သူတိဧ အလွန့်အလွန် နှစ်သက်ကတ်ရေစနစ်တစ်ခုဖြစ်ပြီး၊ ၂၀၁၈ ခုနှစ်တွင် ဖြေကြားသူတိဧ ၈၇.၂% အထိ အသုံးပြုမှုနှုန်း မြင့်လာခရေ။

ဖြေကြားရေ ဆော့ဖ်ဝဲရ်တည်ဆောက်သူရို့ဧ ရင်းမြစ်ထိန်းချုပ်စနစ် အသုံးပြုနှုန်း ဇယား

ယူကေအိုင်တီအလုပ်အကိုင်ဝက်ဘ်ဆိုက် itjobswatch.co.uk က ၂၀၁၆ စက်တင်ဘာနှောင်းပိုင်းတွင် ယူကေဆော့ဖ်ဝဲရ်တည်ဆောက်မှု အချိန်ပြည့်အလုပ်ဧ ၂၉.၂၇% ရေ Git ကိုရည်ညွှန်းကြောင်း၊ ၁၂.၁၇ ရာခိုင်နှုန်းသာ Microsoft Team Foundation Server ကိုရည်ညွှန်းကြောင်း၊ ၁၀.၆၀%သာ ဆ(ဘ်)ဗားသျှင်(Apache Subversion) ကိုရည်ညွှန်းကြောင်း၊ ၁.၃၀%သာ မကယူရီယယ်(Mercurial) ကိုရည်ညွှန်းကြောင်း၊ ဝ.၄၈%သာ Visual SourceSafe ကိုရည်ညွှန်းကြောင်း ဖော်ပြခရေ။

## မှတ်စု

## ကိုးကား