ဖြန့်ဝေရင်းမြစ်ထိန်းချုပ်မှုစနစ် Git 2.23 ကို ဖြန့်ချိသည်။

မိတ်ဆက်ပေးသည်။ ဖြန့်ဝေသောအရင်းအမြစ်ထိန်းချုပ်မှုစနစ်၏ထုတ်ပြန်ခြင်း။ git 2.23.0. Git သည် အကိုင်းအခက်ခွဲခြင်းနှင့် ပေါင်းစည်းခြင်းအပေါ် အခြေခံ၍ ပြောင်းလွယ်ပြင်လွယ်မဟုတ်သော လိုင်းမဟုတ်သော ဖွံ့ဖြိုးတိုးတက်ရေးကိရိယာများကို ပံ့ပိုးပေးသည့် လူကြိုက်အများဆုံး၊ ယုံကြည်စိတ်ချရပြီး စွမ်းဆောင်ရည်မြင့် ဗားရှင်းထိန်းချုပ်မှုစနစ်များထဲမှတစ်ခုဖြစ်သည်။ သမိုင်း၏ ခိုင်မာမှုနှင့် နောက်ကြောင်းပြန်ပြောင်းလဲမှုများကို ခံနိုင်ရည်ရှိစေရန် သေချာစေရန်၊ ကွန်မန့်တစ်ခုစီရှိ ယခင်သမိုင်းတစ်ခုလုံးကို သွယ်ဝိုက်သောနည်းဖြင့် ခွဲထုတ်ခြင်းကို အသုံးပြုပြီး တဂ်တစ်ဦးချင်းစီကို အသိအမှတ်ပြုရန်နှင့် developer များ၏ ဒစ်ဂျစ်တယ်လက်မှတ်များဖြင့် ကတိပြုနိုင်သည်။

ယခင်ထွက်ရှိထားသည့် ဗားရှင်းအသစ်နှင့် နှိုင်းယှဉ်ပါက ဗားရှင်းအသစ်တွင် developer 505 ဦး၏ ပူးပေါင်းပါဝင်မှုဖြင့် ပြင်ဆင်ထားသော ပြောင်းလဲမှု 77 ခု ပါဝင်ပြီး 26 ခုသည် ပထမဆုံးအကြိမ် ဖွံ့ဖြိုးတိုးတက်မှုတွင် ပါဝင်ခဲ့သည်။ အခြေခံ တီထွင်ဆန်းသစ်မှုများ:

  • အကိုင်းအခက် ခြယ်လှယ်ခြင်း (ပြောင်းလဲခြင်းနှင့် ဖန်တီးခြင်း) နှင့် လုပ်ငန်းလမ်းညွှန်တွင် ဖိုင်များကို ပြန်လည်ရယူခြင်း ("git checkout $commit - $filename") ကဲ့သို့သော လျော့ရဲရဲတွဲတွဲတွဲထားသော "git checkout" စွမ်းရည်များကို စမ်းသပ်ရန်အတွက် စမ်းသပ် "git switch" နှင့် "git restore" ညွှန်ကြားချက်များကို မိတ်ဆက်ပေးထားပါသည်။ သို့မဟုတ် ဇာတ်ညွှန်းနေရာ၌ ချက်ချင်း (“—staging”၊ “git checkout” တွင် analogue မရှိပါ။ "git checkout" ကဲ့သို့ "git restore" သည် ပြန်လည်ရယူထားသည့် လမ်းညွှန်များမှ ခြေရာခံမထားသောဖိုင်များကို ဖယ်ရှားသည် (ပုံမှန်အားဖြင့် "--no-overlay")။
  • “-abort” နှင့်ဆင်တူသည့် “git merge –quit” option ကို ထပ်ထည့်လိုက်သည်က အကိုင်းအခက်များ ပေါင်းစည်းခြင်းလုပ်ငန်းစဉ်ကို ရပ်တန့်စေသော်လည်း အလုပ်လုပ်သည့်လမ်းညွှန်ကို မထိမိအောင် ထားလိုက်ပါ။ လူကိုယ်တိုင်ပေါင်းစည်းမှုအတွင်း ပြုလုပ်ခဲ့သော အပြောင်းအလဲအချို့ကို သီးခြား commit အဖြစ် ထုတ်ပြန်ရန် ပိုကောင်းမည်ဆိုပါက ဤရွေးချယ်မှုသည် အသုံးဝင်ပါသည်။
  • "git clone", "git fetch" နှင့် "git push" command များသည် ချိတ်ဆက်ထားသော repositories များတွင် commits များ ရှိနေခြင်းကို ထည့်သွင်းစဉ်းစားသည် (တလှည့်စီ);
  • ထပ်ပြောပါသည်။ “git အပြစ်တင်—ignore-rev” နှင့် “—ignore-revs-file” ရွေးချယ်မှုများသည် အသေးအဖွဲပြောင်းလဲမှုများပြုလုပ်သည့် ကတိကဝတ်များကို ကျော်သွားနိုင်သည် (ဥပမာ၊ ဖော်မတ်ပြင်ဆင်မှုများ)
  • ကွဲလွဲနေသော ကတိကိုကျော်ရန် "git cherry-pick —skip" option ကို ပေါင်းထည့်ခဲ့သည် (“git reset && git cherry-pick —continue” sequence ၏ အလွတ်ရထားသော analogue တစ်ခု။
  • “git status -[no-]ahead-behind” option ကို အပြီးတိုင် ပြင်ဆင်ပေးသည့် status.aheadBehind ဆက်တင်ကို ပေါင်းထည့်ခဲ့သည်။
  • ဤထုတ်ဝေမှုအရ၊ မူရင်းအားဖြင့် "git log" သည် git shortlog လုပ်ပြီးသားပုံနှင့်ဆင်တူသည်၊ mailmap မှပြုလုပ်သောအကောင့်ပြောင်းလဲမှုများကိုထည့်သွင်းသည်။
  • 2.18 တွင် မိတ်ဆက်ခဲ့သော commit ဂရပ် (core.commitGraph) ၏ စမ်းသပ်ဆဲ ကက်ရှ်၏ အပ်ဒိတ်လုပ်ဆောင်ချက်သည် သိသိသာသာ အရှိန်မြှင့်ခဲ့သည်။ နမူနာပုံစံများစွာကိုအသုံးပြုပြီး “git fetch —multiple” တွင် အော်တို-gc သို့ ခေါ်ဆိုမှုအရေအတွက်ကို လျှော့ချသည့်အခါ git တစ်ခုစီအတွက် ပိုမိုမြန်ဆန်စေသည်။
  • ယခုအခါ "git ဌာနခွဲ --list" သည် နေရာဒေသမရွေး၊ စာရင်း၏အစတွင် သီးခြား HEAD ကို အမြဲပြသနေပါသည်။

source: opennet.ru

မှတ်ချက် Add