ဖဌန့်ဝေရင်သမဌစ်ထိန်သချုပ်မဟုစနစ် Git 2.31 ကို ဖဌန့်ချိသည်။

ဖဌန့်ဝေရင်သမဌစ်ထိန်သချုပ်မဟုစနစ် Git 2.31 ကို ယခုရရဟိနိုင်ပါပဌီ။ Git သည် အကိုင်သအခက်ခလဲခဌင်သနဟင့် ပေါင်သစည်သခဌင်သအပေါ် အခဌေခံ၍ ပဌောင်သလလယ်ပဌင်လလယ်မဟုတ်သော လိုင်သမဟုတ်သော ဖလံ့ဖဌိုသတိုသတက်ရေသကိရိယာမျာသကို ပံ့ပိုသပေသသည့် လူကဌိုက်အမျာသဆုံသ၊ ယုံကဌည်စိတ်ချရပဌီသ စလမ်သဆောင်ရည်မဌင့် ဗာသရဟင်သထိန်သချုပ်မဟုစနစ်မျာသထဲမဟတစ်ခုဖဌစ်သည်။ သမိုင်သ၏ခိုင်မာမဟုနဟင့် နောက်ကဌောင်သပဌန်ပဌောင်သလဲမဟုမျာသကို ခံနိုင်ရည်ရဟိစေရန်အတလက်၊ ကတိတစ်ခုစီတလင် ယခင်သမိုင်သတစ်ခုလုံသကို သလယ်ဝိုက်သောနည်သဖဌင့် ခလဲထုတ်ခဌင်သကို အသုံသပဌုသည်၊ ၎င်သသည် တစ်ညသချင်သစီ၏ တဂ်မျာသကို အသိအမဟတ်ပဌုရန်နဟင့် developer မျာသ၏ ဒစ်ဂျစ်တယ်လက်မဟတ်မျာသဖဌင့် ကတိပဌုနိုင်သည်။

ယခင်ထလက်ရဟိထာသသည့် ဗာသရဟင်သအသစ်နဟင့် နဟိုင်သယဟဉ်ပါက ဗာသရဟင်သအသစ်တလင် ဆော့ဖ်ဝဲရေသသာသသူ ၈၅ ဩှ၏ ပူသပေါင်သပါဝင်မဟုဖဌင့် ပဌင်ဆင်ထာသသော အပဌောင်သအလဲ ၆၇၉ ခု ပါဝင်ပဌီသ ၂၃ ညသသည် ဖလံ့ဖဌိုသတိုသတက်မဟုတလင် ပထမဆုံသအကဌိမ် ပါဝင်ခဲ့သည်။ အဓိက တီထလင်ဆန်သသစ်မဟုမျာသ-

  • cron ကိုမပံ့ပိုသသောစနစ်မျာသတလင် အချိန်ပိုင်သအလုပ်မျာသလုပ်ဆောင်နိုင်စေမည့် "git maintenance" command ကိုထည့်သလင်သထာသသည်။ ဥပမာအာသဖဌင့်၊ command အသစ်ကိုအသုံသပဌုခဌင်သဖဌင့်၊ သင်သည် repository packaging process ကို အခါအာသလျော်စလာ လုပ်ဆောင်ရန် စီစဉ်နိုင်သည်၊ သို့မဟသာ အမျိုသမျိုသသော commands မျာသကို လုပ်ဆောင်နေချိန်တလင် packaging ကို အလိုအလျောက် လုပ်ဆောင်သည့်အခါ repository ကို လော့ခ်ချသည်အထိ စောင့်ရန် မလိုအပ်ပါ။ "git ပဌုပဌင်ထိန်သသိမ်သမဟု" ညလဟန်ကဌာသချက်သည် သင့်အာသ အပဌန်အလဟန်အကျိုသပဌုသည့်ဆက်ရဟင်ကို မပိတ်ဆို့ဘဲ နောက်ခံရဟိ သိုလဟောင်မဟု၏ အကောင်သဆုံသပုံစံကို ထိန်သသိမ်သရန် ပိုမိုကောင်သမလန်အောင်လုပ်ဆောင်ခဌင်သနဟင့် လည်ပတ်မဟုမျာသကို လုပ်ဆောင်နိုင်စေသည် - တစ်နာရီလျဟင်တစ်ကဌိမ်၊ အဝေသထိန်သသိုလဟောင်မဟုမဟ လတ်ဆတ်သောအရာဝတ္ထုမျာသကို ဒေါင်သလုဒ်လုပ်ရန်နဟင့် အပ်ဒိတ်လုပ်ရန် လုပ်ဆောင်နိုင်သည်။ ကလန်မန့်ဂရပ်ဖဌင့် ဖိုင်ကို သိမ်သဆည်သထာသပဌီသ သိုလဟောင်သိမ်သဆည်သမဟု လုပ်ငန်သစဉ်သည် ညတိုင်သ စတင်ပါသည်။
  • အထုပ်ဖိုင်မျာသအတလက် ဒစ်ခ်ပေါ်တလင် ပဌောင်သပဌန်အညလဟန်သ (revindex) ကို ထိန်သသိမ်သရန်အတလက် ပံ့ပိုသမဟု ထပ်လောင်သထည့်ထာသသည်။ Git သည် သီသခဌာသဖိုင်မျာသတလင်ရဟိသော အရာဝတ္ထုပုံစံဖဌင့် ဒေတာအာသလုံသကို သိမ်သဆည်သထာသကဌောင်သ သတိရပါ။ repository နဟင့် အလုပ်လုပ်ခဌင်သ၏ စလမ်သဆောင်ရည်ကို တိုသမဌဟင့်ရန်အတလက် အရာဝတ္ထုမျာသကို pack files မျာသတလင် ထပ်လောင်သထည့်ထာသပဌီသ ၎င်သတို့သည် အချက်အလက်မျာသကို တစ်ခုနဟင့်တစ်ခု လိုက်ကဌည့်နေသည့် အရာဝတ္ထုမျာသ၏ စီသကဌောင်သပုံစံဖဌင့် တင်ပဌသည် (git fetch နဟင့် git push ဖဌင့် အရာဝတ္ထုမျာသကို လလဟဲပဌောင်သသည့်အခါ အလာသတူဖော်မတ်ကို အသုံသပဌုသည်။ အမိန့်မျာသ)။ အထုပ်ဖိုင်တစ်ခုစီအတလက်၊ အညလဟန်သဖိုင် (.idx) ကို ဖန်တီသထာသပဌီသ၊ ပေသထာသသည့် အရာဝတ္ထုကို သတ်မဟတ်ပေသသည့်ကိရိယာကို အသုံသပဌု၍ သိမ်သဆည်သထာသသည့် အထုပ်ဖိုင်ရဟိ အော့ဖ်ဆက်ကို အလလန်လျင်မဌန်စလာ ဆုံသဖဌတ်နိုင်စေမည့် အညလဟန်သဖိုင်တစ်ခု ဖန်တီသထာသသည်။ Git 2.31 တလင် မိတ်ဆက်ထာသသော၊ ပဌောင်သပဌန်အညလဟန်သ (.rev) သည် pack file တစ်ခုအတလင်သ အရာဝတ္ထုတစ်ခုနေရာချထာသမဟုနဟင့်ပတ်သက်သည့် အချက်အလက်မဟ အရာဝတ္ထုတစ်ခုကို သတ်မဟတ်ခဌင်သဆိုင်ရာ သတ်မဟတ်ခဌင်သလုပ်ငန်သစဉ်ကို ပိုကောင်သအောင်ပဌုလုပ်ရန် ရည်ရလယ်သည်။

    ယခင်က၊ အထုပ်ဖိုင်ကိုခလဲခဌမ်သစိတ်ဖဌာစဉ်တလင် ထိုသို့သောပဌောင်သလဲခဌင်သအာသ လျင်မဌန်စလာလုပ်ဆောင်ခဲ့ပဌီသ အလာသတူအညလဟန်သမျာသကို ပဌန်လည်အသုံသပဌုရန် ခလင့်မပဌုဘဲ အကဌိမ်တိုင်သအညလဟန်သကို ထုတ်ပေသရန် တလန်သအာသပေသခဲ့သည်။ အညလဟန်သတစ်ခုတည်ဆောက်ခဌင်သ၏လုပ်ဆောင်ချက်သည် အရာဝတ္ထု-အနေအထာသအတလဲမျာသ array တစ်ခုတည်ဆောက်ခဌင်သနဟင့် ၎င်သကိုနေရာအလိုက်စီခဌင်သမဟ ဆင်သသက်လာပဌီသ ကဌီသမာသသောအထုပ်ဖိုင်မျာသအတလက် အချိန်ကဌာမဌင့်နိုင်သည်။

    ဥပမာအာသဖဌင့်၊ တိုက်ရိုက်အညလဟန်သကို အသုံသပဌုသည့် အရာဝတ္ထုမျာသ၏ အကဌောင်သအရာမျာသကို ပဌသရန် လုပ်ဆောင်ချက်တစ်ခုသည် အရာဝတ္ထုမျာသ၏ အရလယ်အစာသကို ပဌသရန် လုပ်ဆောင်ချက်ထက် 62 ဆ ပိုမဌန်ပဌီသ တည်နေရာမဟ အရာဝတ္ထုဒေတာကို အညလဟန်သမဖော်ပဌပါ။ ပဌောင်သပဌန်အညလဟန်သကို အသုံသပဌုပဌီသနောက်၊ ကလုပ်ဆောင်မဟုမျာသသည် ခန့်မဟန်သခဌေအာသဖဌင့် တူညီသောအချိန်ကို စတင်ခဲ့သည်။ အဆင်သင့်လုပ်ထာသသောဒေတာကို disk မဟတိုက်ရိုက်လလဟဲပဌောင်သခဌင်သဖဌင့် fetch နဟင့် push commands မျာသကိုလုပ်ဆောင်သောအခါတလင် Reverse Index မျာသသည် သင့်အာသ အရာဝတ္ထုပေသပို့ခဌင်သလုပ်ငန်သမျာသကို အရဟိန်မဌဟင့်နိုင်စေပါသည်။ ပုံသေအာသဖဌင့်၊ ပဌောင်သပဌန်အညလဟန်သမျာသကို ဖန်တီသမည်မဟုတ်ပါ၊ ၎င်သတို့ကိုထုတ်လုပ်ရန်၊ သင်သည် "git config pack.writeReverseIndex true" ဆက်တင်ကိုဖလင့်ထာသကာ သိုလဟောင်ရာနေရာကို "git repack -Ad" ညလဟန်ကဌာသချက်ဖဌင့် ထုပ်ပိုသပါ။

  • commit-graph ဖိုင်ဖော်မတ်ရဟိ အသလင်အပဌင်ကို အခဌေခံ၍ စလမ်သဆောင်ရည် ပိုမိုကောင်သမလန်အောင် ပေါင်သထည့်ထာသသော၊ commits မျာသအကဌောင်သ အချက်အလက်မျာသ၊ commit မျိုသဆက်နံပါတ်အကဌောင်သ ဒေတာအသစ်မျာသကို ဝင်ရောက်ကဌည့်ရဟုခလင့်ကို ပိုကောင်သအောင်အသုံသပဌုသည်၊
  • သိုလဟောင်မဟုအသစ်တလင် မူရင်သအတိုင်သအသုံသပဌုသည့် ပင်မဘဏ်ခလဲ၏အမည်ကို ပဌန်လည်သတ်မဟတ်ခဌင်သအတလက် ရလေသချယ်စရာမျာသ ထပ်လောင်သထည့်ထာသသည် (init.defaultBranch ဆက်တင်)။ ပဌင်ပ repositories ကိုဝင်ရောက်သည့်အခါ၊ git သည် HEAD ညလဟန်ပဌသည့်ဌာနခလဲကို စစ်ဆေသရန်ကဌိုသစာသသည် ပဌင်ပဆာဗာသည် ပုံမဟန်အာသဖဌင့် "ပင်မ" ဌာနခလဲကို အသုံသပဌုပါက၊ "git clone" လုပ်ဆောင်ချက်သည် စက်တလင်သရဟိ "main" ကို စစ်ဆေသရန် ကဌိုသပမ်သမည်ဖဌစ်သည်။ ယခု Git 2.31 သည် အလလတ်သိုလဟောင်မဟုမျာသအတလက် ကငလေရဟင်သခဌင်သအမျိုသအစာသကို ပံ့ပိုသပေသပါသည်။ ဥပမာအာသဖဌင့်၊ သိုလဟောင်မဟုအသစ်တစ်ခုအာသ ၎င်သသို့ပထမဆုံသ ဖာထေသမဟုမထည့်မီ စက်တလင်သတလင် ပုံတူပလာသသည့်အခါ၊ စက်တလင်သမိတ္တူတလင် ယခုအခါ ပဌင်ပဆာဗာတလင် သတ်မဟတ်ထာသသည့် မူရင်သအထက်စီသကဌောင်သအမည်ပါရဟိသည်။
  • အရာဝတ္ထုမျာသ၏ အရလယ်အစာသ အကျဉ်သချုပ်ကို ပေသဆောင်ရန် "git rev-list" ကလန်မန်သတလင် --disk-usage option ကို ထည့်ထာသသည်။
  • ပေါင်သစည်သသည့်နောက်ကလယ်တလင် လာမည့်ပဌောင်သလဲမဟုကို မျဟော်လင့်ထာသသည့်အတလက်၊ အမည်ပဌောင်သခဌင်သရဟာဖလေခဌင်သအာသ သိသိသာသာ ပိုမိုကောင်သမလန်အောင်ပဌုလုပ်ထာသသည်။
  • အမလေအနဟစ် PCRE1 ၏ ပုံမဟန်အသုံသအနဟုန်သစာကဌည့်တိုက်အတလက် ပံ့ပိုသမဟုကို ရပ်ဆိုင်သလိုက်ပါပဌီ။
  • hashing algorithm မပါဝင်ဘဲ အတိုချုံ့ထာသသော လင့်ခ်မျာသအသုံသပဌုခဌင်သကို ပဌင်သထန်စလာတာသမဌစ်ရန် ဖဌစ်နိုင်သည်။ core.abbrev ဘောင်သို့ တန်ဖိုသ "no" ကို သတ်မဟတ်ခဌင်သဖဌင့် တာသမဌစ်ချက်ကို ဖလင့်ထာသသည်။
  • "--path-format=(absolute|relative)" option ကို "git rev-parse" command တလင် ဆလေမျိုသ သို့မဟုတ် absolute paths မျာသ ထလက်သင့်သည်ဆိုသည်ကို ပဌတ်သာသစလာ သတ်မဟတ်ရန် ထည့်သလင်သထာသသည်။
  • Bash ပဌီသစီသမဟု scripts မျာသသည် သင့်ကိုယ်ပိုင် "git" ကလန်မန်သမျာသအတလက် ပဌီသစီသမဟုစည်သမျဉ်သမျာသထည့်ရန် လလယ်ကူစေသည်။
  • standard input stream မဟ ကိုသကာသချက်မျာသကို ဖတ်ရန် "git bundle" command တလင် --stdin ရလေသချယ်မဟုတစ်ခု ထည့်ထာသသည်။
  • "git log" command တလင် ရလေသချယ်ခလင့်အသစ်ကို ထည့်ထာသသည်- "--diff-merges=" “
  • ပလာသနေသော output ကိုဖယ်ရဟာသပစ်ရန် "--deduplicatecan" option ကို "git ls-files" command တလင် ထည့်ထာသသည်။
  • ကတိပဌုမဟုမျာသစလာကို ဖယ်ထုတ်ရန် မျက်နဟာဖုံသအသစ်မျာသ ထပ်ထည့်ထာသသည် - " ^!" ပဌီသတော့ “ ^- “
  • နဟိုင်သယဟဥ်ပဌိုင်နေသည့် အပိုင်သအခဌာသ၏ တစ်ဖက်ခဌမ်သကိုသာ ပဌသရန် "--လက်ဝဲသပ်သပ်" နဟင့် "--ညာ-သပ်သပ်" ရလေသစရာမျာသကို "git range-diff" ညလဟန်ကဌာသချက်တလင် ထည့်ထာသသည်။
  • "git diff" နဟင့် "git log" ညလဟန်ကဌာသချက်မျာသတလင် --skip-to= ရလေသချယ်စရာမျာသကို ပေါင်သထည့်ထာသသည်။ " နဟင့် " —rotate-to= » စတင်သည့်လမ်သကဌောင်သမျာသအဆုံသသို့ ကျော်ရန် သို့မဟုတ် ရလဟေ့ရန်။
  • "--skip-to=" option ကို "git difftool" ညလဟန်ကဌာသချက်တလင် ထည့်သလင်သခဲ့သည်။ » ကျပန်သလမ်သကဌောင်သမဟ အနဟောက်အယဟက်ဖဌစ်စေသော session တစ်ခုကို ပဌန်လည်စတင်ရန်။
  • ဆော့ဖ်ဝဲအင်ဂျင်နီယာမျာသကဌာသ ပဋိပက္ခအခဌေအနေမျာသကို ဖဌေရဟင်သရန်အတလက် အခဌေခံမူမျာသကို သတ်မဟတ်ပေသသည့် ကျင့်ထုံသဥပဒေသည် ဗာသရဟင်သ 2.0 သို့ အပ်ဒိတ်လုပ်ပဌီသပါပဌီ (ယခင်ဗာသရဟင်သ 1.4 ကို အသုံသပဌုထာသသည်)။

    source: opennet.ru

မဟတ်ချက် Add