Mon May 26 2025 • 5 mins read
Coding စတင်လေ့လာတဲ့အချိန်မှာ “Git” ဆိုတဲ့နာမည်ကို မကြားဖူးတဲ့ Developer မရှိလောက်ပါဘူး။ Git, Branch, Commit, Push စတဲ့ စကားလုံးတွေကလည်း စတင်လေ့လာနေသူတွေအဖို့ နားလည်ဖို့ရာ အခက်အခဲတွေ ကြုံတွေ့ရတတ်ပါတယ်။
Git ဟာ နားလည်ရခက်တဲ့ နည်းပညာတစ်ခုမဟုတ်ပါဘူး။ အရိုးရှင်းဆုံးပြောရရင် Git ဆိုတာ ကျွန်တော်တို့ရေးထားတဲ့ ကုဒ်တွေအတွက် "Time Machine” တစ်ခုလိုပါပဲ။ ရေးထားတဲ့ Code တွေကို အချိန်တစ်ခုချင်းစီအလိုက် ပြန်လည်ရယူပေးနိုင်တဲ့ Tool တစ်ခုပါ။ Git ရဲ့ အခြေခံ သဘောတရားကို နားလည်သွားရင် အရမ်းကို အသုံးဝင်တဲ့၊ မရှိမဖြစ် Tool တခုဆိုတာ နားလည်လာမှာပါ။
မိတ်ဆွေက ပရောဂျက်တခုရဲ့ စာရင်းစာအုပ်တအုပ်ကို ပြုစုနေရတယ် ဆိုပါစို့။ စာရင်းတွေကို အသစ်ထပ်မံ ပြင်ဆင်ပြောင်းလဲလိုတယ်၊ ဒါပေမယ့် လက်ရှိစာရင်းတွေကိုလည်း သိမ်းထားချင်သေးတယ်ဆိုရင် Copy တွေ အများကြီး လုပ်ရပါတော့မယ်။ ဥပမာ၊ document_v1.docx, document_v2.docx, document_FINAL.docx, document_FINAL_Revised.docx စသည်ဖြင့် မပြီးဆုံးနိုင်တဲ့ Version တွေကို ကော်ပီသိမ်းထားဖို့ ရှိလာနိုင်ပါတယ်။ ဒါဟာ အဆင်ပြေတဲ့ လုပ်ဆောင်မှုတော့ မဟုတ်ပါဘူး။ အကယ်၍ အဆိုပါ စာရင်းစာအုပ်ကို တစုံတယောက်က ဝင်ရောက်ပြင်ဆင်လိုက်မယ်ဆိုရင် ပိုပြီးထိန်းချုပ်ရ ခက်သွားစေမှာဖြစ်ပါတယ်။ Git ဟာ အဲဒီလိုပြဿနာတွေကို ဖြေရှင်းပေးနိုင်ပါတယ်။ Git က ကျွန်တော်တို့ ပြောင်းလဲလိုက်တဲ့ ဖိုင်တွေကို နောက်ကွယ်ကနေ Track လုပ်ပြီး သိမ်းဆည်းမှတ်သားထားပေးနိုင်မှာပါ။
တိတိကျကျပြောရရင် Git ဆိုတာ Snapshot လုပ်ငန်းစဉ်တခုပါပဲ။ ပရောဂျက်ရဲ့ File ပြောင်းလဲမှုတစ်ခုချင်းစီကို “Snapshot” အနေနဲ့ မှတ်တမ်းတင်ပေးပါတယ်။ ဘယ်ဖိုင်ကို ပြင်ဆင်ခဲ့တယ်၊ ဘယ်ဖိုင်ကို ဖျက်ခဲ့တယ်၊ ဘယ်ဖိုင်ကို အသစ်ထပ်ထည့်ခဲ့တယ်ဆိုပြီး မှတ်သားထားပေးတာပါ။ Snapshot တစ်ခုချင်းစီဟာ File တစ်ခုချင်းစီကို မထိခိုက်စေဘဲ၊ လိုချင်တဲ့ အချိန်မှာ လိုချင်တဲ့ Version ဆီကို နောက်ပြန်သွားနိုင်ဖို့ ခွင့်ပြုပေးနိုင်ပါတယ်။ ဒါဟာ Git ရဲ့ လှပမှုတခုပဲဖြစ်ပါတယ်။
Git ရဲ့ မရှိမဖြစ်၊ နေစဉ်သုံး အခြေခံ Command တချို့ကို ဒီဆောင်းပါးမှာ ဖော်ပြပေးထားပါတယ်။
Coding လေ့လာနေသူတိုင်း သိထားသင့်တဲ့ Git Command 5 မျိုး
Git ဟာ Team Collaboration နဲ့ Experimentation အတွက် အရမ်းကို အထောက်အကူပြုပါတယ်။
1. Collaboration (အဖွဲ့လိုက်လုပ်ဆောင်မှု)
ပရောဂျက်တခုကို Developer အများကြီးက စုပေါင်း လုပ်ဆောင်ကြတဲ့အခါ Git က တစ်ဦးချင်းစီရဲ့ ပြင်ဆင်မှုတွေကို သီးခြားမှတ်သားထားပေးမှာပါ။ အဲဒီနောက်မှာ အတူတကွ ပြန်လည်ပေါင်းစည်းပေးနိုင်တဲ့ လုပ်ဆောင်ချက်ကြောင့် Data Conflict မဖြစ်အောင် ကာကွယ်ပေးနိုင်ပါတယ်။ ဥပမာ၊ လူ ၅ ဦးက Document တခုတည်းကို မတူညီတဲ့နေရာတွေကနေ တပြိုင်တည်း ဝင်ရောက်ပြင်ဆင်နေတယ်လို့ စဉ်းစားကြည့်ပါ။ ဒီနေရာမှာ Git က တဦးစီတိုင်းအတွက် ကိုယ်ပိုင် ကော်ပီ Version တခုကို ဖန်တီးပေးနိုင်ပြီး၊ တဦးချင်းစီရဲ့ ပြင်ဆင်မှုတိုင်းကိုလည်း သီးခြား Track လုပ်ပေးနေမှာ ဖြစ်ပါတယ်။ ပြင်ဆင်မှုတွေကို အတည်ပြုလိုက်တဲ့အခါမှာသာ Git က တစုတစည်းတည်း ပြန်လည် ပေါင်းစည်းပေးသွားမှာဖြစ်ပါတယ်။
2. Experimentation (စမ်းသပ်မှု)
Git ရဲ့ Branch ဆိုတဲ့ Feature က အရမ်းအသုံးဝင်ပါတယ်။ Branch တစ်ခုဖွင့်ပြီး မိမိ စမ်းသပ်ပြင်ဆင်လိုတဲ့ အပိုင်းတွေကို လွယ်လွယ်ကူကူ ပြုပြင်နိုင်ပါတယ်။ ပြင်ဆင်မှုတွေကို အတည်ပြုလိုက်တဲ့အခါမှာလည်း Main Branch နဲ့ ပြန်လည်ပေါင်းစည်းနိုင်မှာဖြစ်ပါတယ်။ ဒီနည်းလမ်းက ပရောဂျက်ရဲ့ Main Version ကို ထိခိုက်စေမယ့် ပြဿနာတွေကို လျော့ချပေးနိုင်ပါတယ်။
Git Command တွေ (ဥပမာ- git init
, git commit
) ကို စတင်လေ့လာ၊ စမ်းသပ်ကြည့်တဲ့အချိန်မှာ ရှုပ်ထွေးခက်ခဲစေနိုင်ပါတယ်။ ဒါပေမယ့် Git ရဲ့ အခြေခံသဘောတရားကို နားလည်အောင် ကြိုးစားပြီး တဆင့်ချင်း လေ့လာသွားရင် တဖြည်းဖြည်းရင်းနှီးကျွမ်းဝင်လာနိုင်ပါတယ်။ Git ဆိုတာ Developer တိုင်းအတွက် အရမ်းကို အသုံးဝင်တဲ့ Tool တခုဖြစ်ပါတယ်။ Git ရဲ့ လုပ်ဆောင်ပေးနိုင်တဲ့ အရာတွေကို နားလည်သွားတဲ့အခါ အချိန်ကုန်သက်သာမှု၊ အဆင်ပြေမှုတွေကို ခံစားလာမိမှာ သေချာပါတယ်။
#CodeWithThura