Π‘Π»Π΅Π΄ Π΄Π²Π° ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° ΠΊΠΎΠ΄Π° Git 2.35 Π±Π΅ΡΠ΅ ΠΏΡΡΠ½Π°ΡΠ°. Git Π΅ Π΅Π΄Π½Π° ΠΎΡ Π½Π°ΠΉ-ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΠ΅, Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ ΠΈ Π²ΠΈΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠ° Π³ΡΠ²ΠΊΠ°Π²ΠΈ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°Π·ΠΊΠ»ΠΎΠ½ΡΠ²Π°Π½Π΅ ΠΈ ΡΠ»ΠΈΠ²Π°Π½Π΅. ΠΠ° Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ ΡΠ΅Π»ΠΎΡΡΡΠ° Π½Π° ΠΈΡΡΠΎΡΠΈΡΡΠ° ΠΈ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΡΡ Π·Π°Π΄Π½Π° Π΄Π°ΡΠ°, Π²ΡΠ² Π²ΡΠ΅ΠΊΠΈ ΠΊΠΎΠΌΠΈΡ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠΌΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ Ρ Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ»Π°ΡΠ° ΠΏΡΠ΅Π΄ΠΈΡΠ½Π° ΠΈΡΡΠΎΡΠΈΡ; ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΡ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠ°Π³ΠΎΠ²Π΅ ΠΈ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ Ρ ΡΠΈΡΡΠΎΠ²ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅.
Π ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ ΠΏΡΠ΅Π΄ΠΈΡΠ½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ, Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π²ΠΊΠ»ΡΡΠ²Π° 494 ΠΏΡΠΎΠΌΠ΅Π½ΠΈ, ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ Ρ ΡΡΠ°ΡΡΠΈΠ΅ΡΠΎ Π½Π° 93 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, ΠΎΡ ΠΊΠΎΠΈΡΠΎ 35 ΡΠ° ΡΡΠ°ΡΡΠ²Π°Π»ΠΈ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π·Π° ΠΏΡΡΠ²ΠΈ ΠΏΡΡ. ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈ:
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° SSH ΠΊΠ»ΡΡΠΎΠ²Π΅ Π·Π° ΡΠΈΡΡΠΎΠ²ΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° Git ΠΎΠ±Π΅ΠΊΡΠΈ ΡΠ° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ. ΠΠ° Π΄Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π½Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΊΠ»ΡΡΠ°, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° OpenSSH Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΈΡΠ΅ βΠ²Π°Π»ΠΈΠ΄Π½ΠΎ ΠΏΡΠ΅Π΄ΠΈβ ΠΈ βΠ²Π°Π»ΠΈΠ΄Π½ΠΎ ΡΠ»Π΅Π΄β, Ρ ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΡΠΈΠ³ΡΡΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π½Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ, ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ ΠΊΠ»ΡΡΡΡ Π΅ Π±ΠΈΠ» Π·Π°Π²ΡΡΡΡΠ½ ΠΎΡ Π΅Π΄ΠΈΠ½ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΠΈΠΌΠ°ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ΄ΠΏΠΈΡΠΈΡΠ΅ ΠΎΡ ΡΡΠ°ΡΠΈΡ ΠΈ Π½ΠΎΠ²ΠΈΡ ΠΊΠ»ΡΡ - Π°ΠΊΠΎ ΠΈΠ·ΡΡΠΈΠ΅ΡΠ΅ ΡΡΠ°ΡΠΈΡ ΠΊΠ»ΡΡ, ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π΅Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈΡΠ΅, Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ Ρ Π½Π΅Π³ΠΎ, Π° Π°ΠΊΠΎ Π³ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΠ΅, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΎΡΡΠ°Π½Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΡΡΡ ΡΡΠ°ΡΠΈΡ ΠΊΠ»ΡΡ, ΠΊΠΎΠΉΡΠΎ Π²Π΅ΡΠ΅ Π΅ Π·Π°ΠΌΠ΅Π½Π΅Π½ Ρ Π΄ΡΡΠ³ ΠΊΠ»ΡΡ. Π‘ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° valid-before ΠΈ valid-after ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅ ΠΎΠ±Ρ Π²Π°ΡΠ° Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ, ΠΊΠΎΠ³Π°ΡΠΎ Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½ ΠΏΠΎΠ΄ΠΏΠΈΡΡΡ.
- Π Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° merge.conflictStyle, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΡΠ΅ΠΆΠΈΠΌΠ° Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ»ΠΈΠ²Π°Π½Π΅, ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ΅ΠΆΠΈΠΌΠ° βzdiff3β, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π° Π²ΡΠΈΡΠΊΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈ ΡΠ΅Π΄ΠΎΠ²Π΅, ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈ Π² Π½Π°ΡΠ°Π»ΠΎΡΠΎ ΠΈΠ»ΠΈ ΠΊΡΠ°Ρ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΠΈΠ·Π²ΡΠ½ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΠΏΠ»ΠΎΡ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΠΎ-ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ°.
- Π Π΅ΠΆΠΈΠΌΡΡ β--stagedβ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΊΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βgit stashβ, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠΊΡΠΈΠ΅ΡΠ΅ ΡΠ°ΠΌΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅, Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΊΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΡΠ±Π²Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π΄Π° ΠΎΡΠ»ΠΎΠΆΠΈΡΠ΅ Π½ΡΠΊΠΎΠΈ ΠΎΡ ΡΠ»ΠΎΠΆΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ, Π·Π° Π΄Π° Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ Π²Π΅ΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΎΡΠΎ ΠΈ ΡΠ΅ Π·Π°Π΅ΠΌΠ΅ΡΠ΅ Ρ ΠΎΡΡΠ°Π½Π°Π»ΠΎΡΠΎ ΡΠ»Π΅Π΄ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅. Π Π΅ΠΆΠΈΠΌΡΡ Π΅ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βgit commitβ, ΠΊΠ°ΡΠΎ Π·Π°ΠΏΠΈΡΠ²Π° ΡΠ°ΠΌΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅, ΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ Π΄Π° ΡΡΠ·Π΄Π°Π²Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠΈΡ Π² βgit stash βstagedβ, ΡΠ΅Π·ΡΠ»ΡΠ°ΡΡΡ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π° Π²ΡΠ² Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°ΡΠ° ΠΎΠ±Π»Π°ΡΡ Π½Π° ΡΠΊΡΠΈΠ²Π°Π»ΠΈΡΠ΅. Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ, ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π²ΡΡΠ½Π°ΡΠΈ Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βgit stash popβ.
- ΠΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° "git log" Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π½ΠΎΠ² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΡΠΎΡΠΌΠ°Ρ, "--format=%(describe)", ΠΊΠΎΠΉΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°ΡΠ΅ ΠΈΠ·Ρ ΠΎΠ΄Π° Π½Π° "git log" Ρ ΠΈΠ·Ρ ΠΎΠ΄Π° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° "git describe". ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° "git describe" ΡΠ° ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° ("-format=%(describe:match= ,ΠΈΠ·ΠΊΠ»ΡΡΠΈ= )"), Π² ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΈ ΡΡΠΊΡΠ°ΡΠ΅Π½ΠΈ ΡΠ°Π³ΠΎΠ²Π΅ ("βformat=%(describe:tags= )") ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΠΉΡΠ΅ Π±ΡΠΎΡ Π½Π° ΡΠ΅ΡΡΠ½Π°Π΄Π΅ΡΠ΅ΡΠΈΡΠ½ΠΈΡΠ΅ Π·Π½Π°ΡΠΈ Π·Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠ±Π΅ΠΊΡΠΈ ("βformat=%(describe:abbrev= )"). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΈΠ·Π±ΡΠΎΠΈΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ 8 Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠ°, ΡΠΈΠΈΡΠΎ ΡΠ°Π³ΠΎΠ²Π΅ Π½ΡΠΌΠ°Ρ ΡΠ°Π³ Π·Π° ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ Π·Π° ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅, ΠΈ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅ 8-ΡΠΈΠΌΠ²ΠΎΠ»Π½ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°: $ git log -8 βformat='%(describe:exclude=*-rc *,abbrev=13 )' v2.34.1-646-gaf4e5f569bc89 v2.34.1-644-g0330edb239c24 v2.33.1-641-g15f002812f858 v2.34.1-643-g2b95d94b056ab v2.34.1- 642-gb56bd 95bbc8f7 v2.34.1-203-gffb9f2980902d v2.34.1-640- gdf3c41adeb212 v2.34.1-639-g36b65715a4132
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° user.signingKey Π²Π΅ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π½ΠΎΠ²ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ ΠΊΠ»ΡΡΠΎΠ²Π΅, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈ Π΄ΠΎ ΡΠΈΠΏΠ° βssh-β ΠΈ ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ»Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΡ Π΄ΠΎ ΠΊΠ»ΡΡΠ°. ΠΠ»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΠΈΡΠ΅ ΡΠΈΠΏΠΎΠ²Π΅ ΡΠ΅ ΠΏΠΎΡΠΎΡΠ²Π°Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΏΡΠ΅ΡΠΈΠΊΡΠ° "key::", Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ "key::ecdsa-sha2-nistp256" Π·Π° ECDSA ΠΊΠ»ΡΡΠΎΠ²Π΅.
- Π‘ΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΏΠΈΡΡΠΊ Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΡΠ΅ΠΆΠΈΠΌ ββhistogramβ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΎΠΏΡΠΈΡΡΠ° ββcolor-moved-wsβ, ΠΊΠΎΡΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° ΠΎΡΠ²Π΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΈ Π² ΡΠ²Π΅ΡΠΎΠ²Π° ΡΠ°Π·Π»ΠΈΠΊΠ°, Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½Π°.
- ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° "git jump", ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π½Π° Vim Π·Π° ΡΠΎΡΠ½ΠΎΡΠΎ ΠΏΡΠ΅ΡΠΊΠ°ΡΠ°Π½Π΅ Π΄ΠΎ ΠΆΠ΅Π»Π°Π½Π°ΡΠ° ΠΏΠΎΠ·ΠΈΡΠΈΡ Π²ΡΠ² ΡΠ°ΠΉΠ» ΠΏΡΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ Π½Π° ΡΠ»ΠΈΠ²Π°Π½Π΅, ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΡΠ°Π·Π»ΠΈΠΊΠΈ ΠΈΠ»ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π·Π° ΡΡΡΡΠ΅Π½Π΅, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΡΠ΅ΡΠ½ΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠ±Ρ Π²Π°Π½Π°ΡΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ Π½Π° ΡΠ»ΠΈΠ²Π°Π½Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ ΡΠ°ΠΌΠΎ Π΄ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° "foo", ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅ "git jump merge - foo", Π° Π·Π° Π΄Π° ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° "Documentation" ΠΎΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° - "git jump merge - ':^Documentation'"
- ΠΠ΅ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° Π·Π° ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΠΏΠ° "size_t" Π²ΠΌΠ΅ΡΡΠΎ "unsigned long" Π·Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π°ΡΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΎΠ±Π΅ΠΊΡΠΈΡΠ΅, ΠΊΠΎΠ΅ΡΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΠ»ΡΡΠΈ "clean" ΠΈ "smudge" Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΠΏΠΎ-Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΡ 4 GB Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Ρ ΠΌΠΎΠ΄Π΅Π» Π½Π° Π΄Π°Π½Π½ΠΈ LLP64, ΡΠΈΠΏΡΡ βunsigned longβ, Π² ΠΊΠΎΠΉΡΠΎ Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ Π΄ΠΎ 4 Π±Π°ΠΉΡΠ°.
- ΠΠΏΡΠΈΡΡΠ° β-empty=(stop|drop|keep)β Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΊΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βgit amβ, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π·Π° ΠΏΡΠ°Π·Π½ΠΈ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΡΠ΄ΡΡΠΆΠ°Ρ ΠΏΠ°ΡΠΎΠ²Π΅, ΠΊΠΎΠ³Π°ΡΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΠΏΠ°ΡΠΎΠ²Π΅ ΠΎΡ ΠΏΠΎΡΠ΅Π½ΡΠΊΠ°ΡΠ° ΠΊΡΡΠΈΡ. Π‘ΡΠΎΠΉΠ½ΠΎΡΡΡΠ° βstopβ ΡΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈ ΡΡΠ»Π°ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π·Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΡ, βdropβ ΡΠ΅ ΠΏΡΠΎΠΏΡΡΠ½Π΅ ΠΏΡΠ°Π·Π΅Π½ ΠΏΠ°Ρ, Π° βkeepβ ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π΅ ΠΏΡΠ°Π·Π΅Π½ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½Ρ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ°ΡΡΠΈΡΠ½ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ (ΡΠ°Π·ΡΠ΅Π΄Π΅Π½ ΠΈΠ½Π΄Π΅ΠΊΡ) ΠΊΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ "git reset", "git diff", "git blame", "git fetch", "git pull" ΠΈ "git ls-files" Π·Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ ΡΠΏΠ΅ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΡΡΡΠΎ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ , Π² ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠ°Π½Π΅ (sparse-checkout).
- ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βgit sparse-checkout initβ Π΅ ΠΎΡΡΠ°ΡΡΠ»Π° ΠΈ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° ΠΎΡ βgit sparse-checkout setβ.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΎ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° Π½ΠΎΠ² "reftable" Π±Π΅ΠΊΠ΅Π½Π΄ Π·Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠ΅ΠΏΡΠ°ΡΠΊΠΈ ΠΊΠ°ΡΠΎ ΡΠ°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ ΠΈ ΡΠ°Π³ΠΎΠ²Π΅ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ. ΠΠΎΠ²ΠΈΡΡ Π±Π΅ΠΊΠ΅Π½Π΄ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π±Π»ΠΎΠΊΠΎΠ²ΠΎ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΎ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° JGit, ΠΈ Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ Π·Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ ΠΏΡΠ΅ΠΏΡΠ°ΡΠΊΠΈ. ΠΠ΅ΠΊΠ΅Π½Π΄ΡΡ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ Π΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΡΠΏΡΠ°Π²ΠΊΠΈ ΠΈ Π½Π΅ Π΅ Π³ΠΎΡΠΎΠ² Π·Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ° ΡΠΏΠΎΡΡΠ΅Π±Π°.
- Π¦Π²Π΅ΡΠΎΠ²Π°ΡΠ° ΠΏΠ°Π»ΠΈΡΡΠ° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° "git grep" Π΅ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Π½Π°, Π·Π° Π΄Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π° Π½Π° ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° GNU grep.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru