ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááŸá áºáá¡ááŒá¬ááœááºá ááŒáá·áºáá±á¡áááºážá¡ááŒá áºááááºážáá»á¯ááºááŸá¯á áá ẠGit 2.39 ááá¯áá¯ááºááŒááºáá²á·áááºá Git ááẠá¡ááá¯ááºážá¡áááºááœá²ááŒááºážááŸáá·áº áá±á«ááºážá ááºážááŒááºážá¡áá±á«áº á¡ááŒá±áá¶á ááŒá±á¬ááºážááœááºááŒááºááœááºááá¯ááºáá±á¬ ááá¯ááºážááá¯ááºáá±á¬ ááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážáááááá¬áá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááá·áº áá°ááŒáá¯ááºá¡áá»á¬ážáá¯á¶ážá áá¯á¶ááŒááºá áááºáá»áááŒá®áž á áœááºážáá±á¬ááºáááºááŒáá·áº áá¬ážááŸááºážááááºážáá»á¯ááºááŸá¯á áá áºáá»á¬ážáá²ááŸáá áºáá¯ááŒá áºáááºá áááá¯ááºážáááá¯ááºáá¬ááŸá¯ááŸáá·áº áá±á¬ááºááŒá±á¬ááºážááŒááºááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááᯠáá¶ááá¯ááºáááºááŸáá á±áááºá¡ááœááºá ááááá áºáá¯á á®ááœáẠááááºáááá¯ááºážáá áºáá¯áá¯á¶ážááᯠááœááºááá¯ááºáá±á¬áááºážááŒáá·áº ááœá²áá¯ááºááŒááºážááᯠá¡áá¯á¶ážááŒá¯áááºá áááºážááẠáá áºáŠážáá»ááºážá á®á áááºáá»á¬ážááᯠá¡ááá¡ááŸááºááŒá¯áááºááŸáá·áº developer áá»á¬ážá áá áºáá»á áºáááºáááºááŸááºáá»á¬ážááŒáá·áº áááááŒá¯ááá¯ááºáááºá
ááááºááœááºááŸááá¬ážááá·áºáá¬ážááŸááºážááŸáá·áº ááŸáá¯ááºážááŸááºáá«áá áá¬ážááŸááºážá¡áá áºááœáẠáá±á¬á·ááºáá²áá±ážáá¬ážáá° áá áŠážá áá°ážáá±á«ááºážáá«áááºááŸá¯ááŒáá·áº ááŒááºáááºáá¬ážááá·áº ááŒá±á¬ááºážáá²ááŸá¯ ááá áᯠáá«áááºááŒá®áž áá áŠážááẠááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááœáẠááááá¯á¶ážá¡ááŒááẠáá«áááºáá²á·áááºá á¡ááá áá®ááœááºáááºážáá áºááŸá¯áá»á¬áž-
- á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááááá¯ááºážááŒá±á¬ááºážááŸááááºážááááºážá¡áá»ááºá¡áááºáá»á¬ážááŒáá·áºá¡áá»ááºážáá»á¯ááºáá»á¬ážááá¯ááŒááááºáá®ááá¯ááºážááŒá¯áá¯ááºáá¬ážáá±á¬ "git shortlog" ááœááºáááºážááẠá
á¬áá±ážááᬠááá¯á·ááá¯áẠáá±á¬áºááá®áááºáá»á¬ážá¡ááœáẠáááºáááºáá»á¬ážá¡ááá¯áẠáááá¬ážá¡á¯ááºá
á¯ááœá²á·ááŒááºážá¡ááœáẠ"-group" ááœá±ážáá»ááºááŸá¯ááᯠááá·áºááœááºážáá¬ážáááºá á¥ááá¬á¡á¬ážááŒáá·áºá "Co-authored-by" á¡ááœááºááœááºáá±á¬áºááŒáá¬ážáá±á¬á¡áá°á¡áá®áá»á¬ážááá¯ááá·áºááœááºážá
ááºážá
á¬ážááŒá®ážááŒá±á¬ááºážáá²ááŸá¯á¡áá±á¡ááœááºááŸáá·áºáááºáááºáá±á¬á¡áá»ááºá¡áááºáá»á¬ážáá«áá±á¬ developer áá»á¬ážáá
á¬áááºážááá¯ááŒááááºá áááºááẠcommand ááá¯áá¯á¶ážááá¯ááºáááº- git shortlog -ns --group=author - -group=trailer:co-authored-by
Shortlog output ááᯠformatting specifiers áá»á¬áž á¡áá¯á¶ážááŒá¯á áá±á«ááºážá ááºážááá¯ááºááŒá®áž "--group" option ááẠááŸá¯ááºááœá±ážáá±á¬ á¡á á®áááºáá¶á á¬áá»á¬ážáááºáá®ážááŸá¯ááᯠáááááá¬áᬠááá¯ážááŸááºážá á±ááŒá®áž áááºááá·áºá á®ááŒááºážá¡áááá·áºáá»á¬áž ááá¯á¡ááºááŸá¯ááᯠáááºááŸá¬ážáá±ážááá¯ááºáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá áẠáá±ážáá¬ážáá±á¬ áá¯ááºáá±ááŸá¯á¡ááœáẠááááááẠáááºáá»áŸ áááºáá¶áá²á·ááŒá±á¬ááºáž á¡áá»ááºá¡áááºáá»á¬áž áá«ááŸááá±á¬ á¡á á®áááºáá¶á á¬ááᯠáááºáá®ážáááºá git shortlog v2.38.0.. âdate='format:%Y-%m' âgroup=' ááᯠáááºááŸááºááá¯ááºáá«áááºá %cd' -s 2 2022-08 47 2022-09 405 2022-10 194 2022-11 5 2022-12 ááááºáá á¡áá¬ážáá°áá¯ááºáá±á¬ááºááŸá¯ááᯠáá¯ááºáá±á¬ááºáááºá¡ááœáẠáá»áá¯ážááœá²ááŸáá·áº uniq utilities áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááẠááá¯á¡ááºáááº- git log v2.38.0. .. âdate='format:%Y -%m' âformat='%cd' | áá»áá¯ážáá°á ᯠ| uniq -c
- ááá¯ááŸá±á¬ááºáá¯á¶ (á¡ááá¯ááºážá¡áááºáá»á¬áž ááá¯á·ááá¯áẠáááºáá»á¬ážááŒáá·áº áááºááœáŸááºážááŒááºážáááŸááá±á¬) áááºááŸááºážááá®ááá¯ááºáá±á¬ á¡áá¬áá»á¬ážááᯠáá¯ááºááá¯ážáááºá¡ááœáẠáá®ááá¯ááºážáá¯ááºáá¬ážááá·áº "cruft packs" ááá¹ááá¬ážá á
áœááºážáá±á¬ááºáááºáá»á¬ážááᯠááá¯ážáá»á²á·áá¬ážáá«áááºá áááºááŸááºážááá®ááá¯ááºáá±á¬ á¡áá¬áá»á¬ážááᯠá¡ááŸáá¯ááºá
á¯áá±á¬ááºážáá°á០áá»ááºááá¯ááºáá±á¬áºáááºáž ááŒáá¯ááºááœá²á¡ááŒá±á¡áá±áá»á¬ážááᯠááŸá±á¬ááºááŸá¬ážááẠáááºážááá¯á·ááᯠáá»ááºááá
áºáá® á¡áá»áááºá¡ááá¯ááºážá¡áá¬áá
áºáá¯á¡áá ááá¯ááŸá±á¬ááºáá¯á¶ááœáẠááŸááá±áá«áááºá âcruft packsâ ááá¹ááá¬ážááẠááá·áºá¡á¬áž â.mtimesâ ááá¯ážáá»á²á·ááŸá¯ááŒáá·áº áá®ážááŒá¬ážááá¯ááºáá
áºáá¯ááœáẠááááºážáááºážáá¬ážááá·áº áá®ážááŒá¬ážááá¬ážáá
áºáá¯ááŸá á¡áá¬ááá¹áá¯áá
áºáá¯á
á®á ááŒá¯ááŒááºááœááºážáá¶ááŸá¯á¡áá»áááºááŸáá·áº á¡áá»ááºá¡áááºáá»á¬ážááᯠááŒááááºá áááºááŸááºážááá®ááá¯ááºáá±á¬ á¡áá¬á¡á¬ážáá¯á¶ážááᯠááá¯ááºáá
áºáá¯ááœáẠááááºážáááºážááá¯ááºá
á±áááºá ááá¯á·ááŒá±á¬áá·áº áááºážááá¯á·áá¯ááºáá±á¬ááºááá¯ááºáááºá á
á¯á
á¯áá±á«ááºáž ááŒá¯ááŒááºááœááºážáá¶áá»áááºááŸáá·áº ááááºáá«á
áááºážááá¯á·ááᯠá¡ááŸááºáááẠááá»ááºáá® áááºááŸááºážááá®ááá¯ááºáá±á¬ ááá¯ááŸá±á¬ááºáááºážááœáẠááŸááá±ááá·áº á¡áá»áááºááᯠâ--prune=â ááœá±ážáá»ááºááŸá¯ááŒáá·áº áá¯á¶ážááŒááºáááºá ááá¯á·áá¬ááœááºá ááá»ááºáá®ááŸá±á¬áá·áºááŸá±ážááŒááºážááẠáá°áá»áá¯ážáá±ážá¡ááŒá±á¡áá±áá»á¬ážááŒá±á¬áá·áº ááá¯ááŸá±á¬ááºááŸá¯á¡áá»áá·áºáá»ááºááŒá á¬ážááŸá¯ááᯠáá¬ážáá®ážááẠáá»áŸááááá±á¬ááºááŒá®áž áááºááœá±á·áá»áá±á¬áááºážáááºážááŒá áºáá±á¬áºáááºážá áááºážááẠ100% á áááºáá»ááááºááá¯ááºáá±á áá»ááºá á®ážáá±áá±á¬ ááá¯ááŸá±á¬ááºáááºážááᯠááŒááºáááºááá°ááẠááá¯ááá¯ááœááºáá°á á±áááºá áá¯ááºáá±ááŸá¯á¡áá áºááẠááŒááºááá áºáá¯áááºáá®ážááẠááá¯ááºáá áºáá¯ááᯠáááºááŸááºááá¯ááºá á±ááá·áº â--expire-toâ ááœá±ážáá»ááºááŸá¯ááᯠâgit repackâ ááœáŸááºááŒá¬ážáá»ááºááœáẠááá·áºááœááºážááŒááºážááŒáá·áº áá»á±á¬ááºáá¯á¶ážáá±áá±á¬ á¡áá¬ááá¹áá¯áá»á¬ážááᯠááááºážáááºážááá¯ááºá á±áá«áááºá áá»ááºááá¯ááºáá±á¬ á¡áá¬á¡á¬ážáá¯á¶ážá áááá¹áá°á á¥ááá¬á¡á¬ážááŒáá·áºá backup.git ááá¯ááºááœáẠááœááºáá²á·ááá·áº 5 áááá áºá¡ááœááºáž ááŒá±á¬ááºážáá²ááááá±á¬ á¡áá¬áá»á¬ážááᯠááááºážáááºážáááºá git repack --cruft --cruft-expiration=5.minutes.ago -d --expire ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá -to=../backup.git
- áá áºá áááºáá áºááá¯ááºážáá¯á¶áá°ááœá¬ážááŒááºáž (áá»á²-ááœá±ááŸááºážááŒááºáž) ááŸáá·áº áá áºá áááºáá áºááá¯ááºážá¡ááœáŸááºážáá»á¬áž (áá»á²á¡ááœáŸááºážááááºážáá»á¬áž) ááŸáááá·áºáá±áá¬áá»á¬ážááœáẠááŸá¬ááœá±ááá·áºá¡áá« "git grep -cached" áááºáááºááŸá¯á á¡ááŒááºááŸá¯ááºáž (70%) á¡áá áááááá¬áᬠááá¯ážáá¬áááºá ááááºáá "-cached" option ááá¯áááºááŸááºáá±á¬á¡áá«á ááŸá¬ááœá±ááŸá¯ááẠáá¯á¶ááŸááºá¡ááœáŸááºážááœáẠáŠážá áœá¬áá¯ááºáá±á¬ááºáá²á·ááŒá®ážá ááá¯á·áá±á¬áẠáá áºááá¯ááºážáá áºá ááœáẠááŸá¬ááœá±ááŒááºážááŒá áºááŒá®áž ááŒá®ážáá¬ážáá±á¬ááá¯ááŸá±á¬ááºáá¬áá±áá¬áá»á¬ážááœáẠááŸá¬ááœá±áá¬ááœáẠáááá¬áááºááŸá¬ážáá±á¬ááŸá±á¬áá·áºááŸá±ážááŸá¯áá»á¬ážááŒá áºá á±áá²á·áááºá
- "git push" áááºáááºááŸá¯á¡ááœááºáž áááºážááá¯á·á¡á¬áž ááá¯ááŸá±á¬ááºáááºážááœáẠááá¬ážááŸááá® á¡áá¬ááá¹áá¯á¡áá áºáá»á¬ážá áá±á«ááºážá ááºááŸá¯ááᯠáá¬áá¬á á¡áááºááŒá¯ááŒááºážááᯠá¡ááŸáááºááŒáŸáá·áºááá¯ááºáá«ááŒá®á á á áºáá±ážááá·áºá¡áá«ááœáẠááŒá±áá¬áá¬ážáá±á¬ááá·áºááºáá»á¬ážááá¯áᬠá á¬áááºážááá¯ááºááŒááºážááá¯á· ááŒá±á¬ááºážááŒááºážááŒáá·áºá ááá·áºáẠ7 áááºážáá«ááŸááá±á¬ á ááºážáááºááá¯ááŸá±á¬ááºáá¬ááœáẠ3% ááá¯áᬠpush áá¯ááºáá±á¬ááºáá»ááºááŒáá·áº á¡áá»á¯á¶ážáááºáá±á¬á á á áºáá±ážááŒááºážá¡áá»áááºááᯠ4.5 á áá»áŸá±á¬á·áá»ááœáá·áºááŒá¯áá¬ážáááºá
- áá¯ááºááœáẠááŒá áºááá¯ááºáá»á±ááŸááá±á¬ ááááºážááŒáá·áºááŒáá·áºáá»áŸá¶ááŸá¯áá»á¬ážááᯠáá¬ááœááºáááºá "git apply" á¡áááá·áºááẠá á®áá¶áá¯ááºáá±á¬ááºááá¯ááºááá·áº áá¬áá±ážááŸá¯á á¡áá»á¬ážáá¯á¶ážá¡ááœááºá¡á á¬ážááᯠááá·áºáááºáá¬ážáááºá áá¬áá±ážááŸá¯á¡ááœááºá¡á á¬áž 1 GB áááºáá»á±á¬áºááœááºáá«á á¡ááŸá¬ážá¡ááœááºážáá áºáá¯áá±á«áºáá¬áá«áááºá
- ááŒá áºááá¯ááºáá»á±ááŸááá±á¬ á¡á¬ážáááºážáá»ááºáá»á¬ážááᯠáá¬ááœááºáááºá GIT_TRACE_CURL=2 ááá¯á·ááá¯áẠGIT_CURL_VERBOSE=3 ááœá±ážáá»ááºááŸá¯ááŸáá·áºá¡áá° HTTP/1 ááŸáá·áºá¡áá° h1h2 module ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá« áááºááŸááºáá¬ážááá·áº áá±á«ááºážá á®ážáá»á¬ážá០áááá¯á¡ááºáá±á¬á¡áá»ááºá¡áááºáá»á¬ážááᯠááŸááºážáááºážááẠá¡ááŒá±á¬ááºážá¡áá²áá»á¬áž ááŒá¯áá¯ááºáá¬ážáá«áááºá
- á¡ááŒá¬ážáá¬áááœá²áá áºáá¯ááá¯á· áááºá¹áá±áááá·áºááºáá áºáá¯ááŒá áºááá·áº áááºááœá²áá áºáá¯ááœáẠá á áºáá±ážááá·áºá¡áá«á "git symbolic-ref HEAD" command ááẠááá¯á¡áá« symlink á¡áááºááẠáá áºááŸááºáá¬áááœá²áá¡áááºááᯠááŒááá«áááºá
- ááááºáá¬áááœá²áá áºáá¯á áá±á¬áºááŒáá»ááºááᯠáááºážááŒááºáááºá¡ááœáẠâ--áááºážááŒááº-áá±á¬áºááŒáá»ááºâ ááœá±ážáá»ááºááŸá¯ (âgit áá¬áááœá²âáááºážááŒááº-áá±á¬áºááŒáá»áẠ@{-1}â) ááœáẠ@{-1} á¡ááŒááºážá¡áá¯á¶á¡ááœáẠáá¶á·ááá¯ážááŸá¯ áá±á«ááºážááá·áºáá¬ážáááºá
- á á¶ááá·áºááœááºážááŸá¯ááŸáá áºááá·áº ááœá±ážáá»ááºá áá¬áá»á¬ážá á¬áááºážááᯠááŒááºáááºážááẠ"git merge-tree --stdin" á¡áááá·áºááᯠááá·áºááœááºážáá²á·áááºá
- ááœááºáááºááá¯ááºá áá áºáá»á¬ážááœááºá ááá¯ááºá áá áºá¡ááœááºáž á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááᯠá á±á¬áá·áºááŒáá·áºááá·áº fsmonitor ááá¯ááºááœááºáá°ááᯠáá¯á¶ááŸááºá¡á¬ážááŒáá·áº ááááºáá¬ážáááºá
source: opennet.ru