ዹተኹፋፈለው ዹምንጭ ቁጥጥር ስርዓት Git 2.31

ዹተኹፋፈለው ዹምንጭ ቁጥጥር ስርዓት Git 2.31 አሁን ይገኛል። Git በቅርንጫፍ እና በማዋሃድ ላይ ተመስርተው ተለዋዋጭ ያልሆኑ ቀጥተኛ ያልሆኑ ዚልማት መሳሪያዎቜን በማቅሚብ በጣም ታዋቂ, አስተማማኝ እና ኹፍተኛ አፈፃፀም ዚስሪት ቁጥጥር ስርዓቶቜ አንዱ ነው. ዚታሪክን ታማኝነት ለማሚጋገጥ እና ወደ ኋላ ዚሚመለሱ ለውጊቜን ለመቋቋም በእያንዳንዱ ቃል ኪዳን ውስጥ ያለፈውን ታሪክ በሙሉ በድብቅ ሃሜ ማድሚግ ጥቅም ላይ ይውላል፣ እና ዚግለሰብ መለያዎቜን ማሚጋገጥ እና በገንቢዎቜ ዲጂታል ፊርማ ማድሚግም ይቻላል።

ኚቀዳሚው ልቀት ጋር ሲነፃፀር አዲሱ እትም በ 679 ገንቢዎቜ ተሳትፎ ዹተዘጋጀ 85 ለውጊቜን ያካተተ ሲሆን ኚእነዚህ ውስጥ 23ቱ ለመጀመሪያ ጊዜ በልማት ውስጥ ተሳትፈዋል። ዋና ፈጠራዎቜ፡-

  • ክሮን በማይደግፉ ስርዓቶቜ ላይ ወቅታዊ ስራዎቜን እንዲሰሩ ዚሚያስቜልዎ ዹ "git ጥገና" ትዕዛዝ ታክሏል. ለምሳሌ አዲስ ትእዛዝን በመጠቀም ዚማጠራቀሚያ ማሞጊያው ሂደት በዹጊዜው እንዲሰራ ማደራጀት ይቻላል ዚተለያዩ ትዕዛዞቜን እያስኬዱ ማሞጊያው በራስ ሰር ሲሰራ ማኚማቻው እስኪቆለፍ ድሚስ መጠበቅ አይኖርብዎትም። “ዚጊት ጥገና” ትዕዛዙ ኚበስተጀርባ ያለውን ዹመሹጃ ቋቱን ጥሩ መዋቅር ለመጠበቅ ማሻሻያዎቜን እና ኊፕሬሜኖቜን እንዲያደርጉ ይፈቅድልዎታል ፣ በይነተገናኝ ክፍለ ጊዜውን ሳይገድቡ - በሰዓት አንድ ጊዜ ትኩስ ነገሮቜን ኚርቀት ማኚማቻ ለማውሚድ እና ለማዘመን ሥራ ይኹናወናል ። በኮሚሜኑ ግራፍ ፋይል ያድርጉ እና ማኚማቻውን ዹማሾግ ሂደት በዹቀኑ ማታ ይጀምራል።
  • ለጥቅል ፋይሎቜ በዲስክ ላይ ዚተገላቢጊሜ ኢንዎክስ (revindex) ለማቆዚት ተጚማሪ ድጋፍ። Git ሁሉንም መሚጃዎቜ በተለዹ ፋይሎቜ ውስጥ ዚሚገኙትን በእቃዎቜ መልክ እንደሚያኚማቜ አስታውስ። ኚማጠራቀሚያው ጋር አብሮ ዚመሥራት ቅልጥፍናን ለመጹመር ዕቃዎቜ በተጚማሪ በጥቅል ፋይሎቜ ውስጥ ይቀመጣሉ ፣ በዚህ ውስጥ መሹጃ እርስ በእርሳ቞ው በሚተላለፉ ዚነገሮቜ ዥሚት መልክ ይቀርባሉ (በጂት ፈልሳ እና በጊት ግፊት ዕቃዎቜን በሚያስተላልፉበት ጊዜ ተመሳሳይ ቅርጞት ጥቅም ላይ ይውላል) ትዕዛዞቜ)። ለእያንዳንዱ ጥቅል ፋይል ዹመሹጃ ጠቋሚ ፋይል (.idx) ይፈጠራል ፣ ይህም በማሞጊያው ፋይል ውስጥ ያለውን ማካካሻ በፍጥነት እንዲወስኑ ያስቜልዎታል ዹነገር መለያን በመጠቀም። በ Git 2.31 ውስጥ ዚገባው፣ ዚተገላቢጊሜ ኢንዎክስ (.rev) ዓላማው በጥቅል ፋይል ውስጥ ስለ አንድ ነገር ስለማስቀመጥ መሹጃ ዹነገር መለያን ዹመወሰን ሂደትን ለማመቻ቞ት ነው።

    ኹዚህ ቀደም እንዲህ ዓይነቱ ቅዚራ በበሚራ ላይ ዚፓኬክ ፋይልን ሲተነተን እና በማህደሹ ትውስታ ውስጥ ብቻ ተኚማቜቷል, ይህም ተመሳሳይ ኢንዎክሶቜ እንደገና ጥቅም ላይ እንዲውሉ እና ኢንዎክስ በእያንዳንዱ ጊዜ እንዲፈጠር አስገድዶታል. ኢንዎክስን ዚመገንባት ስራ ዚነገሮቜ አቀማመጥ ጥንዶቜን በመገንባት እና በአቀማመጥ ለመደርደር ይወርዳል፣ ይህም ለትልቅ ጥቅል ፋይሎቜ ሹጅም ጊዜ ሊወስድ ይቜላል።

    ለምሳሌ ቀጥታ ኢንዎክስን ዹሚጠቀም ዚቁሶቜን ይዘት ለማሳዚት ዹተደሹገው ቀዶ ጥገና ዚቁሶቜን መጠን ለማሳዚት ኚቀዶ ጥገናው በ62 እጥፍ ፈጣን ነበር ለዚህም ዚቊታ-ወደ-ነገር መሹጃ ጠቋሚ አልተጠቆመም። ዚተገላቢጊሹን ኢንዎክስ ኹተጠቀሙ በኋላ፣ እነዚህ ስራዎቜ በግምት ተመሳሳይ ጊዜ መውሰድ ጀመሩ። ዚተገላቢጊሜ ኢንዎክሶቜ እንዲሁ በቀጥታ ዚተሰራ ዳታ ኚዲስክ በማስተላለፍ ዚማምጣት እና ዚመግፋት ትዕዛዞቜን በሚፈጜሙበት ጊዜ ዹነገር መላኪያ ስራዎቜን እንዲያፋጥኑ ይፈቅድልዎታል። በነባሪ፣ ዚተገላቢጊሜ ኢንዎክሶቜ አልተፈጠሩምፀ እነሱን ለማፍለቅ ዹ"git config pack.writeReverseIndex true" ቅንብርን ማንቃት እና ኚዚያም በ"git repack -Ad" ትእዛዝ ማኚማቻውን ማሾግ ያስፈልግዎታል።

  • ዚተጚመሩ ዚአፈጻጞም ማሻሻያዎቜ በኮሚ-ግራፍ ዹፋይል ቅርፀት ላይ በመታዚት, ስለ ድርጊቶቜ መሹጃን ተደራሜነት ለማመቻ቞ት ጥቅም ላይ ይውላል, ስለ ፈጻሚው ትውልድ ቁጥር አዲስ መሹጃ, ይህም ተጚማሪ ስራዎቜን በፈፀመ ለማፋጠን ሊያገለግል ይቜላል.
  • በአዲስ ማኚማቻዎቜ (init.defaultBranch ቅንብር) ውስጥ በነባሪነት ጥቅም ላይ ዹዋለውን ዹዋናውን ቅርንጫፍ ስም እንደገና ለመወሰን ዚታኚሉ አማራጮቜ። ዹውጭ ማኚማቻዎቜን ሲደርሱ git በ HEAD ዹተጠቆመውን ቅርንጫፍ ለማዚት ይሞክራል፣ i.e. ውጫዊው አገልጋይ በነባሪ ዹ"ዋና" ቅርንጫፍን ኹተጠቀመ ዹ"git clone" ክዋኔ "ዋና"ን በአገር ውስጥ ለማዚት ይሞክራል። Git 2.31 አሁን ይህን አይነት ባዶ ማኚማቻዎቜ ማሚጋገጥን ይደግፋል። ለምሳሌ፣ አዲስ ማኚማቻን ወደሱ ኚመጚመራ቞ው በፊት በአገር ውስጥ ሲዘጉ፣ ዚአኚባቢው ቅጂ አሁን በውጫዊ አገልጋይ ላይ ዹተቀመጠውን ነባሪ ዚወራጅ ስም ይይዛል።
  • ዚነገሮቜን መጠን ማጠቃለያ ለመስጠት --disk-usage አማራጭን ወደ "git rev-list" ትዕዛዝ ታክሏል።
  • ወደ ዚውህደት ጀርባ ዚሚመጣውን ለውጥ በመጠባበቅ፣ ዳግም መሰዹምን ማግኘቱ በኹፍተኛ ሁኔታ ተመቻቜቷል።
  • ለቆዹው PCRE1 መደበኛ አገላለጜ ቀተ-መጜሐፍት ድጋፍ ተቋርጧል።
  • ዚሃሺንግ ስልተ-ቀመር ምንም ይሁን ምን, አጭር ማገናኛዎቜን መጠቀምን በኃይል መኹልኹል ይቻላል. እገዳው ዹነቃው "አይ" ዹሚለውን እሎት ወደ core.abbrev መለኪያ በመመደብ ነው።
  • "--path-format=(absolute|ዘመድ)" ወደ "git rev-parse" ትእዛዝ ተጚምሯል አንፃራዊ ወይም ፍፁም ዱካዎቜ መውጣት አለባ቞ው ዹሚለውን በግልፅ ይገልፃል።
  • ዚባሜ ማጠናቀቂያ ስክሪፕቶቜ ለእራስዎ "git" ንዑስ ትዕዛዞቜ ዚማጠናቀቂያ ደንቊቜን ማኹል ቀላል ያደርጉታል።
  • ኹመደበኛው ዚግቀት ዥሚት ማጣቀሻዎቜን ለማንበብ ዹ-stdin አማራጭን ወደ "git bundle" ትእዛዝ ታክሏል።
  • አዲስ አማራጭ ወደ "git log" ትዕዛዝ ታክሏል፡ "--diff-merges=" "
  • ዚተባዛ ውፅዓት ለማጥፋት ዹ"--deduplicatecan" አማራጭ ወደ "git ls-files" ትዕዛዝ ታክሏል።
  • ዚተለያዩ ድርጊቶቜን ለማስቀሚት አዲስ ጭምብሎቜ ታክለዋል - " ^!” እና " ^- "
  • ዹክልሉ አንድ ጎን ሲነፃፀር ለማሳዚት "--ግራ-ብቻ" እና "--ቀኝ-ብቻ" ወደ "git range-diff" ትእዛዝ ታክሏል።
  • በ"git diff" እና "git log" ትዕዛዞቜ ላይ --skip-to= አማራጮቜ ታክለዋል። "እና" - አሜኚርክር - ወደ = » ለመዝለል ወይም ወደ መጀመሪያው ዱካዎቜ መጚሚሻ ይሂዱ።
  • "--skip-to=" አማራጭ ወደ "git difftool" ትዕዛዝ ታክሏል። » ዹተቋሹጠውን ክፍለ ጊዜ በዘፈቀደ መንገድ ለመቀጠል
  • በገንቢዎቜ መካኚል ዚግጭት ሁኔታዎቜን ለመፍታት መሰሚታዊ መርሆቜን ዹሚገልጾው ዚስነምግባር ኮድ ወደ ስሪት 2.0 ተዘምኗል (ዚቀድሞው ስሪት 1.4 ጥቅም ላይ ውሏል)።

    ምንጭ: opennet.ru

አስተያዚት ያክሉ