Dopu trè mesi di sviluppu, u sistema di cuntrollu di fonte distribuitu Git 2.36 hè statu liberatu. Git hè unu di i sistemi di cuntrollu di versione più populari, affidabili è d'altu rendiment, chì furnisce strumenti di sviluppu flexible non lineari basati in ramificazione è fusione. Per assicurà l'integrità di a storia è a resistenza à i cambiamenti retroattivi, l'hashing implicitu di tutta a storia precedente hè aduprata in ogni impegnu; hè ancu pussibule di certificà e tag individuali è impegni cù signature digitale di i sviluppatori.
ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠΎΡΠ»ΡΠΌ Π²ΡΠΏΡΡΠΊΠΎΠΌ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΈΠ½ΡΡΠΎ 717 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΡΠΈ ΡΡΠ°ΡΡΠΈΠΈ 96 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ 26 Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΏΡΠΈΠ½ΡΠ»ΠΈ ΡΡΠ°ΡΡΠΈΠ΅ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π°:
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git logΒ» ΠΈ Β«git showΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βremerge-diffΒ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΎΡΠ»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΠΈΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΈ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΎΡΡΠ°ΠΆΡΠ½Π½ΡΠΌΠΈ Π² ΠΊΠΎΠΌΠΌΠΈΡΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«mergeΒ», ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°Π³Π»ΡΠ΄Π½ΠΎ ΠΎΡΠ΅Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠ΅ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΏΡΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠΈ. ΠΠ±ΡΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«git showΒ» ΡΠ°Π·Π΄Π΅Π»ΡΠ΅Ρ ΡΠ°Π·Π½ΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΎΡΡΡΡΠΏΠΎΠΌ, ΡΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π½ΠΈΠΆΠ΅ ΡΡΡΠΎΠΊΠΈ Β«+/-Β» Π±Π΅Π· ΠΎΡΡΡΡΠΏΠ° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ΅ Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ sha1 Π½Π° oid Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π° Β«+/-Β» Ρ ΠΎΡΡΡΡΠΏΠΎΠΌ β Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°, Π²ΡΠ·Π²Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π² ΡΡΠ½ΠΊΡΠΈΠΈ dwim_ref().
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΡΠΈΠΈ Β«βremerge-diffΒ» ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Π½Π΅ ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ Π²Π΅ΡΠΊΠΈ, Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΎΠ±ΡΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΉΠ»ΠΎΠΌ, ΠΈΠΌΠ΅ΡΡΠΈΠΌ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ, ΠΈ ΡΠ°ΠΉΠ»ΠΎΠΌ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ΅ΡΠ΅Π½Ρ.
- ΠΠΎΠ²ΡΡΠ΅Π½Π° Π³ΠΈΠ±ΠΊΠΎΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠΎ ΡΠ±ΡΠΎΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΡΡ
ΠΊΡΡΠ΅ΠΉ ΡΠ΅ΡΠ΅Π· Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ fsync(). Π Π°Π½Π΅Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ core.fsyncObjectFiles ΡΠ°Π·Π΄Π΅Π»ΡΠ½ Π½Π° Π΄Π²Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ core.fsync ΠΈ core.fsyncMethod, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ fsync, Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ (.git/objects), Π½ΠΎ ΠΈ ΠΊ Π΄ΡΡΠ³ΠΈΠΌ ΡΡΡΡΠΊΡΡΡΠ°ΠΌ git, ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ ΡΡΡΠ»ΠΊΠΈ (.git/refs), reflog ΠΈ pack-ΡΠ°ΠΉΠ»Ρ.
Π§Π΅ΡΠ΅Π· ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ core.fsync ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡ Git, ΠΏΠΎΡΠ»Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ fsync. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ core.fsyncMethod ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ±ΡΠ°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ Π΄Π»Ρ ΡΠ±ΡΠΎΡΠ° ΠΊΡΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ fsync Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΈΠΌΡΠ½Π½ΠΎΠ³ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΠΈΠ»ΠΈ ΡΠΊΠ°Π·Π°ΡΡ writeout-only Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ (pagecache writeback).
- ΠΠ»Ρ Π·Π°ΡΠΈΡΡ ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΡΡΡΠΈΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² .git Π² ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ, ΡΡΠΈΠ»Π΅Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π»ΡΠ±ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ git ΡΠ΅ΠΏΠ΅ΡΡ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ²ΠΎΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ Β«.gitΒ». ΠΡΠ»ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Π΄ΡΡΠ³ΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΠΎ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°. Π£ΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ safe.directory.
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git cat-fileΒ», ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΡ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Git-ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βbatch-commandΒ», Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡΠ°Ρ ΡΠ°Π½Π΅Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«βbatchΒ» ΠΈ Β«βbatch-checkΒ» Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π²ΡΠ±ΠΎΡΠ° ΡΠΈΠΏΠ° Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΡΠ΅Π· ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Β«contents <ΠΎΠ±ΡΠ΅ΠΊΡ>Β» Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Β«info <ΠΎΠ±ΡΠ΅ΠΊΡ>Β» Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΠ±ΡΠ΅ΠΊΡΠ΅. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«flushΒ» Π΄Π»Ρ ΡΠ±ΡΠΎΡΠ° Π±ΡΡΠ΅ΡΠ° Π²ΡΠ²ΠΎΠ΄Π°.
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git ls-treeΒ», ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΡ Π΄Π»Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΏΠΈΡΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π΄Π΅ΡΠ΅Π²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βoid-onlyΒ» (Β«βobject-onlyΒ»), ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ Β«βname-onlyΒ» Π²ΡΠ²ΠΎΠ΄ΡΡΠ°Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π΄Π»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ Π²ΡΠ·ΠΎΠ²Π° ΠΈΠ· ΡΠΊΡΠΈΠΏΡΠΎΠ². Π’Π°ΠΊΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΠΏΡΠΈΡ Β«βformatΒ» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ Π²ΡΠ²ΠΎΠ΄Π°, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΡΠΈΠΏΠ΅, ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ΅.
- Π ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Β«git bisect runΒ» ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π΅Π²ΡΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΊΡΠΈΠΏΡΠ° ΠΏΡΠΈΠ·Π½Π°ΠΊΠ° ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΈ Π²ΡΠ²ΠΎΠ΄Π° Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΈΠ±ΠΎΠΊ Ρ ΠΊΠΎΠ΄Π°ΠΌΠΈ 126 ΠΈΠ»ΠΈ 127 (ΡΠ°Π½Π΅Π΅, Π΅ΡΠ»ΠΈ ΡΠΊΡΠΈΠΏΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Π²ΡΠ΅ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°Π»ΠΈΡΡ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ).
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git fetchΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βrefetchΒ» Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π±Π΅Π· ΠΈΠ½ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌ, ΡΠΆΠ΅ ΠΈΠΌΠ΅ΡΡΠ΅ΠΌΡΡ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ Π΄Π»Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΡΠ±ΠΎΠ΅Π², ΠΊΠΎΠ³Π΄Π° Π½Π΅Ρ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ Π² ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ .
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git update-indexΒ», Β«git checkout-indexΒ», Β«git read-treeΒ» ΠΈ Β«git cleanΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ°ΡΡΠΈΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (sparse index), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΡ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΌΠ΅ΡΡΠΎ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ , Π² ΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ (sparse-checkout).
- ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git clone βfilter=β¦ βrecurse-submodulesΒ», ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ°ΡΡΠΈΡΠ½ΠΎΠΌΡ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ±ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ (ΡΠ°Π½Π΅Π΅ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΡΠΈΠ»ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ, Π° ΡΡΠ±ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π±Π΅Π· ΡΡΡΡΠ° ΡΠΈΠ»ΡΡΡΠ°).
- Π ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Β«git bundleΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠΈΠ»ΡΡΡΠΎΠ² Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git branchΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βrecurse-submodulesΒ» Π΄Π»Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΎΠ±Ρ ΠΎΠ΄Π° ΡΡΠ±ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
- Π userdiff ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄Π»Ρ ΡΠ·ΡΠΊΠ° Kotlin.
Source: opennet.ru