ИздаванС Π½Π° систСма Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° изходния ΠΊΠΎΠ΄ Git 2.50

ΠŸΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½Π° Π΅ вСрсия Π½Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°Ρ‚Π° систСма Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈ тСкстовС Git 2.50. Git ΠΏΡ€Π΅Π΄Π»Π°Π³Π° висока производитСлност ΠΈ осигурява срСдства Π·Π° Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, основана Π½Π° разклоняванС ΠΈ сливанС Π½Π° ΠΊΠ»ΠΎΠ½ΠΎΠ²Π΅. Π—Π° Π΄Π° сС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π° цСлостта Π½Π° историята ΠΈ устойчивостта Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ β€žΠ·Π°Π΄Π½Π°Ρ‚Π° Π΄Π°Ρ‚Π°β€œ, сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° нСявно Ρ…Π΅ΡˆΠΈΡ€Π°Π½Π΅ Π½Π° цялата ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½Π° история Π² всСки commit, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ удостовСряванС с Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ подписи Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π·Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Ρ‚Π°Π³ΠΎΠ²Π΅ ΠΈ commits. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° Git сС разпространява ΠΏΠΎΠ΄ лицСнзия GPLv2+.

Π’ сравнСниС с ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, Π² Π½ΠΎΠ²Π°Ρ‚Π° вСрсия са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ 621 измСнСния, ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ с участиСто Π½Π° 98 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ 35 участват Π·Π° ΠΏΡŠΡ€Π²ΠΈ ΠΏΡŠΡ‚ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π°. Основни Π½ΠΎΠ²ΠΈΠ½ΠΈ:

  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° раздСлянС Π½Π° няколко pack-Ρ„Π°ΠΉΠ»Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° нСдостиТими ΠΎΠ±Π΅ΠΊΡ‚ΠΈ (β€žcruft packsβ€œ), към ΠΊΠΎΠΈΡ‚ΠΎ Π² рСпозитория ΠΎΡ‚ΡΡŠΡΡ‚Π²Π°Ρ‚ Π²Ρ€ΡŠΠ·ΠΊΠΈ (Π½Π΅ са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ ΠΊΠ»ΠΎΠ½ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Ρ‚Π°Π³ΠΎΠ²Π΅). Π˜Π·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° няколко ΠΌΠ°Π»ΠΊΠΈ pack-Ρ„Π°ΠΉΠ»Π° вмСсто Π΅Π΄ΠΈΠ½ голям позволява Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π΄Π° сС ΡΡŠΠΊΡ€Π°Ρ‚ΡΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ Π²Π²ΠΎΠ΄/ΠΈΠ·Π²ΠΎΠ΄ ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ Π½Π° Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ с голям Π±Ρ€ΠΎΠΉ нСдостиТими ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π·Π° всяка опСрация ΠΏΠΎ ΠΏΡ€Π΅ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ Π½Π΅ Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄Π° сС прСзаписват всички Π΄Π°Π½Π½ΠΈ.

    Π’ Π½ΠΎΠ²Π°Ρ‚Π° вСрсия Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° опция β€žβ€”combine-cruft-below-sizeβ€œ, с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° която ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π° обСдиняванС Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ pack-Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ надвишава Π·Π°Π΄Π°Π΄Π΅Π½Π°Ρ‚Π° стойност. Π—Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΡ‚ ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½Π°Ρ‚Π° Π½Π°Π»ΠΈΡ‡Π½Π° опция β€žβ€”max-cruft-sizeβ€œ, Π½ΠΎΠ²Π°Ρ‚Π° опция β€žβ€”combine-cruft-below-sizeβ€œ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π° максималния Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π° pack-Ρ„Π°ΠΉΠ», ΠΊΠΎΠ΅Ρ‚ΠΎ позволява ΠΏΠΎ-Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ обСдиняванС Π½Π° pack-Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ с голям Π±Ρ€ΠΎΠΉ нСдостиТими ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, Ρ€Π°Π·ΠΏΡ€ΡŠΡΠ½Π°Ρ‚ΠΈ Π½Π° няколко pack-Ρ„Π°ΠΉΠ»Π°.

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ СкспСримСнтална ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΈ индСкси MIDX (multi-pack index), ΠΏΡ€ΠΈ ΠΊΠΎΠ΅Ρ‚ΠΎ всСки слой Π½Π° MIDX-индСкса с информация Π·Π° наличността Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Π² ΠΎΡ‚Π΄Π΅Π»Π΅Π½ bitmap-Ρ„Π°ΠΉΠ». Π’ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ рСализираният Π²ΠΈΠ΄ индСкси осигурява Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π±ΡŠΡ€Π·ΠΎ ΠΈ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ добавянС Π½Π° Π½ΠΎΠ²ΠΈ Π±ΠΈΡ‚ΠΎΠ²ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈ Π·Π° наличността Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΡΡ‚ΡŠΠΏΠ²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²ΠΈ commits.
  • ΠžΡ‚ ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ‚Π° Π±Π°Π·Π° Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ старият ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° изпълнСниС Π½Π° сливанС Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Β«recursiveΒ», ΠΊΠΎΠΉΡ‚ΠΎ Π΅ Π·Π°ΠΌΠ΅Π½Π΅Π½ с изцяло ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Β«ORTΒ» (Ostensibly Recursive’s Twin), ΠΏΠΎ-ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅Π½, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π΅Π½ ΠΈ ΡƒΠ΄ΠΎΠ±Π΅Π½ Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°. ORT позволява Π΄Π° сС ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° обСдиняванС Π½Π° Π΄Π²Π° ΠΎΠ±Π΅ΠΊΡ‚Π°, Π±Π΅Π· Π΄Π° сС ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ Π½ΠΎΠ²ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ Π² рСпозитория (ΠΏΡ€ΠΈ стария ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ бСшС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«git merge-tree β€”write-treeΒ», записваща Π½ΠΎΠ²ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ Π² рСпозитория). Π’ Git 2.50 Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° merge-tree Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° опция Β«β€”quietΒ», ΠΏΡ€ΠΈ която Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΎΠ±Π΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈ Π½Π° основа Π½Π° ΠΊΠΎΠ΄ Π½Π° Π²ΡŠΡ€Π½Π°Ρ‚Π°Ρ‚Π° стойност Π±Π΅Π· запис Π½Π° Π΄Π°Π½Π½ΠΈ Π² рСпозитория.
  • Π’ Β«git cat-file β€”batchΒ» ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° опция Β«β€”filterΒ», позволяваща Π΄Π° сС пропуснат някои ΠΎΠ±Π΅ΠΊΡ‚ΠΈ ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° опСрацията. git cat-file β€”batch-check=’%(objectname)’ β€”filter=’object:type=tree’
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«git maintenanceΒ» са Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Ρ‚Ρ€ΠΈ Π½ΠΎΠ²ΠΈ дСйствия: worktree-prune, rerere-gc ΠΈ reflog-expire. ДСйствиСто worktree-prune Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ Π·Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ Π½Π° остарСли ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ€Π΅Π΄Π΅Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ Π΄ΡŠΡ€Π²Π΅Ρ‚Π° (worktrees) Π² рСпозитория. ДСйствиСто rerere-gc ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° старитС записи, останали слСд Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΈ ΠΏΡ€ΠΈ сливанС. ДСйствиСто reflog-expire ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° остарСли Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ ΠΎΡ‚ reflog.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«git reflog dropΒ», която ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° всички Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ reflog Π·Π° ΡƒΠΊΠ°Π·Π°Π½Π°Ρ‚Π° ΠΊΠ»ΠΎΠ½ΠΊΠ°.
  • Π˜Π·Π²ΡŠΡ€ΡˆΠ΅Π½Π° Π΅ оптимизация Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ Π΅ ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π΅ Π½Π° прСфикси Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ, ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΈ са излишни ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«git update-refΒ», повишСна Π΅ СфСктивността Π½Π° Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅Ρ‚ΠΎ Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈ Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ.
  • Π—Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° cURL са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ настройки KeepAlive: http.keepAliveIdle, http.keepAliveInterval ΠΈ http.keepAliveCount.
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«git rev-listΒ» Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ във Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, ΡƒΠ΄ΠΎΠ±Π΅Π½ Π·Π° машинно Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅, ΠΏΡ€ΠΈ ΠΊΠΎΠΉΡ‚ΠΎ всяко ΠΏΠΎΠ»Π΅ Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΎ със символ NUL.
  • Π•Π·ΠΈΠΊΡŠΡ‚ Perl Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΎΡ‚ зависимоститС, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° инструмСнтитС Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с докумСнтация ΠΈ изпълнСниС Π½Π° тСстовия Π½Π°Π±ΠΎΡ€ (Β«make testΒ»). Много Perl-Π΅Π΄Π½ΠΎΡ€Π΅Π΄ΠΎΠ²Ρ†ΠΈ Π² тСстовСтС са Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΈ с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° shell ΠΈΠ»ΠΈ ΠΏΡ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π½Π° Π΅Π·ΠΈΠΊΠ° C.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ userdiff-ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚Π΅Π» Π·Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Β«.iniΒ».
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° send-email Π΅ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° SMTP ΡΡŠΡ€Π²Π΅Ρ€Π° Outlook.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster