Kevin Kyaw
newborn.ninja
Published in
2 min readMay 19, 2020

--

ကျနော်နှင့် GitFlow (အပိုင်း ၅) drop commit

အခုကျနော် ပြောပြပေး သွားမဲ့ အပိုင်းကတော့ ကိုယ်မလိုချင်တော့တဲ့ commit တစ်ခုကို ဘယ်လို ဖယ်ထုတ်မလဲဆိုတဲ့ အကြောင်းပဲ ဖြစ်ပါတယ်။ ဒီအကြောင်းကို မစခင် ကျနော့်ကို အာလူးနည်းနည်း ဖုတ်ခွင့်ပြုပါ။ 😄

အခုဆို စာရေးသူရဲ့ Work From Home ကာလက ၂ လကျော်လာခဲ့ပါပြီ။ ဒီ၂ လအတွင်း စာရေးသူက ဒီ git အကြောင်း ရေးမယ်လို့ စဥ်းစားမိတော့ ကိုယ်သိထားတဲ့ knowledge ကို ပြန်ပြီး နွေးပေးရပါတယ်။ ပြီးမှ screencast ထည့်မလား။ စာကြီးသက်သက်ရေးမလား စသည်ဖြည့် စဥ်းစားပြီး story တစ်ခုထွက်လာတာပါ။ နောက် ပြီး စာရေးသူက ဒီ medium မှာပဲ ရေးတာမဟုတ်ပဲ စာရေးသူရဲ့ Facebook Page ဖြစ်တဲ့ Train With Kevin ပေ့ချ်လေးမှာလည်း workout နဲ့ ပက်သက်တဲ့ activies တွေ၊ workout video တွေပါ အားရင်အားသလို ရေးပါသေးတယ်။ ဘာလို့လဲဆိုတော့ စာရေးသူတို့ computer သမာတွေးဘဝက အထိုင်များတဲ့အတွက် လေ့ကျင့်ခန်း လုပ်ဖို့ လိုအပ်ပါတယ်။ ဒါကြောင့် ကိုယ့် ဝါသနာပါတဲ့ စာတွေရေးပြီး ရှဲရင်း လေ့ကျင့်ခန်းလည်း လုပ်ရင်းနဲ့ နောက် ၇ လကြာရင် လူ့လောကထဲ ရောက်လာမဲ့ စာရေးသူရဲ့ junior အတွက် အစစအရာရာ ပြင်ဆင်ပေးနေရပါတယ် 👨‍👩‍👦 💛။ ကျနော် PUBG ဆော့တာတွေနားပြီး ကျနော့်လို git နည်းပက်သက်ပြီး ယုံကြည်မှုနည်းခဲ့သူ မဖြစ်စေလိုတဲ့ ရည်ရွယ်ချက်နဲ့ ကြိုးစားပြီးရေးပေးနေပါတယ်။ လိုက်လုပ်ကြည့်ရင် အကျိုးရှိပါနိုင်ပါတယ်။ workout အတွက် လေ့ကျင့်ခန်းတွေ သိချင်ရင် စာရေးသူရဲ့ page လေးကို see first လုပ်ပြီး ကြည့်ထားနိုင်ပါတယ်။ ကျနော်တို့ git အကြောင်းဆက်ရအောင်။

ဘယ်အချိန်မှာ ဒီ commit တစ်ခုကို ဖယ်ထုတ်ထာ အသုံးဝင်လဲ?

မလိုချင်တော့တဲ့ commit တစ်ခုပါသွားတဲ့အခါ drop လုပ်လို့ရပါတယ်။ ကျနော့်ရဲ့ commit တွေကို ကြည့်ကြည့်ပါ။ feature/kevin/K01_Enhancement_Login_UI ဆိုတဲ့ branch မှာ commit 2 ခုရှိပါတယ်။ နောက်ဆုံးတစ်ခုက README message ထည့်ထားတာပါ။ ကျနော့်က ဒီ commit ကို ဖျက်ပစ်ချင်တဲ့ ဆန္ဒရှိတဲ့အတွက် ပေါက်ကရ လေးဆယ် ဒီလို ရိုက်ထည့်ထားပါတယ်။

# git_cheat_sheet
# Enhancement login UX/UI
# Add asdkfjalsdfjlasdfklasdjflasdf asfdtest s

ပြီးတာနဲ့ ကျနော် နောက်ထပ် commit ၂ ခု ထပ်ထည့်ပါမယ်။

# git_cheat_sheet
# Enhancement login UX/UI
# ကျနော့်နှင့် GitFlow tutorial များ
# ဒါကတော့ git cherry-pick အတွက် Video Tutorial ပါတဲ့ Medium link ပါ။ http://tiny.cc/yho8oz
# ပထမပိုင်း မဖတ်လိုက်ရသူတွေအတွက်က ကျနော်နှင့် GitFlow (ပထမပိုင်း) http://tiny.cc/dk6xoz
# ဒုတိယပိုင်း မဖတ်လိုက်ရသူတွေအတွက်က ကျနော်နှင့် GitFlow (ဒုတိယပိုင်း) http://tiny.cc/6k6xoz
# တတိယပိုင်း မဖတ်လိုက်ရသူတွေအတွက်က git squash အတွက် Video Tutorial http://tiny.cc/oi6xoz
# (စတုထ္တပိုင်း) မဖတ်လိုက်ရသူတွေအတွက်က git cherry-pick http://tiny.cc/yho8oz
# Frontend Translation http://tiny.cc/l106oz

ကျနော့်ရဲ့feature/kevin/K01_Enhancement_Login_UI branch မှာ commit 4 ခုရှိသွားပါပြီ။ ဒုတိယ commit ရယ်၊ နောက်ဆုံး commit ရယ်က သက်သက်ရိုက်ထားတဲ့ commit ပါ။ ကျနော် အဲ့ဒီ ၂ ခုကို remove လုပ်ချင်ပါတယ်။ အောက်က video လေးကြည့်လိုက်ရအောင်ပါ။

Command တွေကို ကြည့်ကြည့်ရအောင်။ Tutorial 3 မှာပါထားတဲ့ command နဲ့ အတူတူပါပဲ။ git rebase -i HEAD~n n value က commit ဘယ်နှစ်ခုကို drop လုပ်ချင်တာလဲဆိုတာပါ။

git rebase -i HEAD~n
git rebase --continue
git push --force origin branchname

ဒီလောက်ဆို ကိုယ် remove လုပ်ချင်တဲ့ commit ကို ဘယ်လိုလုပ်လဲသိလောက်ပြီးလို့ ယူဆရင် နိဂုံးချုပ်ပါတယ်။

ဒီ Tutorial လေးက တစ်ခုခုရမယ်ဆိုရင် လက်ခုပ်လေးတီးပြီး အားပေးကြပါအုံးဗျာ။

--

--