G i t: Git — Downloading Package
ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈ Π² ΡΡΠΌ ΡΠ°Π·Π½ΠΈΡΠ°
ΠΠ· ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ Π±ΡΠ²Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Π² ΠΊΠΎΠ΄Π΅. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ GitHub ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Π΅ΡΡ Π΅ΡΡΡ ΡΠ΅ΡΠ²ΠΈΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Git.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΡ ΡΠΈΡΠ°Π΅ΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π½Π΅ΠΊΠΎΠ³Π΄Π° Π²ΡΠΏΡΡΠ΅Π½Π½ΠΎΠΉ Π½Π°ΠΌΠΈ ΡΡΠ°ΡΡΠΈ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅:
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git
Git β ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ Ρ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ. ΠΠ½Π° Π±ΡΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° Π² 2005 Π³ΠΎΠ΄Ρ ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ, ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Π΅ΠΌ Linux, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³Π»ΠΈ Π²Π½ΠΎΡΠΈΡΡ ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ Π² ΡΠ΄ΡΠΎ Linux. Git ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠ²ΠΎΠ΅ΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ, ΠΏΡΠΎΡΡΡΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΏΠΎΠ»Π½ΠΎΠΉ Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ.
ΠΠΎΠ΄Ρ ΠΎΠ΄ Git ΠΊ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡ ΠΎΠΆ Π½Π° Π½Π°Π±ΠΎΡ ΡΠ½ΠΈΠΌΠΊΠΎΠ² ΠΌΠΈΠ½ΠΈΠ°ΡΡΡΠ½ΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² Git, ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠ» Π² ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΡΠΎΡ ΡΠ½ΠΈΠΌΠΎΠΊ.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Git:
- ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΈ open-source. ΠΠΎΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ Π²Π½ΠΎΡΠΈΡΡ Π»ΡΠ±ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄;
- ΠΠ΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΈ Π±ΡΡΡΡΡΠΉ. ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΡΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Π΅Π³ΠΎ ΡΠΊΠΎΡΠΎΡΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Git Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π²Π΅ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠ°ΠΉΠ» Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° Π΄Π°Π½Π½ΡΡ ;
- Π Π΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Git ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π² Ρ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π±ΡΠΊΠ°ΠΏΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ ΠΌΠ°Π»ΠΎ ΡΠ»ΡΡΠ°Π΅Π², ΠΊΠΎΠ³Π΄Π° ΠΊΡΠΎ-ΡΠΎ ΡΠ΅ΡΡΠ» Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Git;
- ΠΡΠΎΡΡΠΎΠ΅ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅. Π Π΄ΡΡΠ³ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊβ ΡΡΠΎΠΌΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈ ΡΡΡΠ΄ΠΎΡΠΌΠΊΠ°Ρ Π·Π°Π΄Π°ΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²Π΅ΡΡ ΠΊΠΎΠ΄ ΠΊΠΎΠΏΠΈΡΡΠ΅ΡΡΡ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ. Π Git ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠ°ΠΌΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΏΡΠΎΡΠ΅ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π΅Π΅.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΠ° ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ GitHub ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ Git.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ GitHub ΠΈ ΡΠ΅ΠΌ ΠΎΠ½ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Git
ΠΠ°ΠΊ ΠΌΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π²ΡΡΠ΅, Git β ΡΡΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
GitHub β ΡΠ΅ΡΠ²ΠΈΡ ΠΎΠ½Π»Π°ΠΉΠ½-Ρ ΠΎΡΡΠΈΠ½Π³Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², ΠΎΠ±Π»Π°Π΄Π°ΡΡΠΈΠΉ Π²ΡΠ΅ΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ β Π²ΡΡ, ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Git ΠΈ Π΄Π°ΠΆΠ΅ Π±ΠΎΠ»ΡΡΠ΅.Β Π’Π°ΠΊΠΆΠ΅ GitHub ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡ Π²Π°ΡΡΠ°ΡΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ°, Π±Π°Π³ΡΡΠ΅ΠΊΠΈΠ½Π³ΠΎΠΌ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ ΠΈ Π²ΠΈΠΊΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠΉ Π½Π° GitHub, Π΄ΠΎΡΡΡΠΏΠ΅Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Git ΠΈ Git-ΠΊΠΎΠΌΠ°Π½Π΄. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ: Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΠΏΡΠΈΠ½ΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (pull requests), ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², email-ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ, ΡΠΌΠΎΠ΄Π·ΠΈ, Π³ΡΠ°ΡΠΈΠΊΠΈ, Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ Π·Π°Π΄Π°Ρ, ΡΠΈΡΡΠ΅ΠΌΠ° @ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠΉ, ΠΏΠΎΡ ΠΎΠΆΠ°Ρ Π½Π° ΡΡ, ΡΡΠΎ Π² Twitter, ΠΈ Ρ.Π΄.
ΠΡΠΎΠΌΠ΅ GitHub Π΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Git, β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Bitbucket ΠΈ GitLab. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° Π»ΡΠ±ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ .
Π§ΡΠΎΠ±Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Git ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π΅Π΅, ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΠΏΠΎΠ΄Π±ΠΎΡΠΊΡ ΡΠΏΠ°ΡΠ³Π°Π»ΠΎΠΊ: ΠΎΡ ΠΎΡΠ½ΠΎΠ² Π΄ΠΎ ΡΠ°Π±ΠΎΡΡ Ρ GitHub.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
Π§ΡΠΎΠ±Ρ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Π½ΡΠΆΠ½ΠΎ Π΅ΡΡ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
Π‘ΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ (Π‘ΠΠ, VCS, Version Control Systems) ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Π½Π΅ΡΡΠ½Π½ΡΠ΅ Π² ΠΊΠΎΠ΄. ΠΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΊΠΎΠ΄ Π΄ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ Π½Π΅ ΡΡΠ°ΡΠΈΡΡ ΡΠ°ΡΡ Π½Π° ΠΏΠΎΠΈΡΠΊΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ.
Π‘ΠΠ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π²Π½Π΅ΡΡΠ½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°. ΠΡΠΈ ΡΡΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠ°ΡΡΠ½ΠΈΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΠΈΠ΄ΠΈΡ, Π½Π°Π΄ ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ.
Π’ΠΈΠΏΡ ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ΠΈ ΡΠΎΠΆΠ΅ Π±ΡΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠΌΠΈ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΈ ΡΠΈΠΏΠ° Π‘ΠΠ: Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ, ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ.
ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ (ΠΠ‘ΠΠ)
ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡ
ΡΠ°Π½ΡΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ Π½Π°Π±ΠΎΡΠΎΠ² ΠΏΠ°ΡΡΠ΅ΠΉ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠ°ΡΡ Π΄Π°ΡΠΈΡΡΠ΅ΡΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΎΡΠΌΠ΅ΡΠΊΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΅ΡΠ»ΠΈ ΠΊΠΎΠ΄ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π½Π°Π±ΠΎΡΡ ΠΏΠ°ΡΡΠ΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ Π²ΡΡ Π΅ΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Π¦Π΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ (Π¦Π‘ΠΠ)
ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
Π¦Π‘ΠΠ Π±ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ. Π’Π°ΠΊΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠΌΠ΅ΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΈ ΡΠ°ΠΌ ΠΆΠ΅ ΠΈΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ β Π²ΡΡ ΠΎΠ΄ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠ· ΡΡΡΠΎΡ ΠΎΠ±Π΅ΡΠ½ΡΡΡΡ ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ Π²ΡΠ΅Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ,Β Π² ΡΠ°ΠΊΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΡΡΡΠ΄Π½Π΅Π½Π° ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ.
Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ (Π Π‘ΠΠ)
ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ Π¦Π‘ΠΠ Π±ΡΠ» ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ Π² Π Π‘ΠΠ, ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ ΡΠ½ΠΈΠΌΠΎΠΊ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² (ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ), Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΊΠΎΠΏΠΈΡΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π΅ΡΡΡ ΠΊΠΎΠΏΠΈΡ Π²ΡΠ΅Π³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π²Π½Π΅ΡΡΠ½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Π²ΡΠΉΠ΄Π΅Ρ ΠΈΠ· ΡΡΡΠΎΡ, Π»ΡΠ±ΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ. ΠΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ Π Π‘ΠΠ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ Git ΡΠ΅ΠΉΡΠ°Ρ ΡΠ°ΠΊ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½.
ΠΠ΅ ΡΠΌΠ΅ΡΠ½ΠΎ? Π Π·Π΄Π΅ΡΡ ΡΠΌΠ΅ΡΠ½ΠΎ: @ithumor
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠ°ΡΡΠΈ Β«Difference Between Git and GitHubΒ»
Git β ΠΠΈΠΊΠΈΡΡΠ΅Π±Π½ΠΈΠΊ
ΠΠ°ΡΠ΅ΡΠΈΠ°Π» ΠΈΠ· ΠΠΈΠΊΠΈΡΡΠ΅Π±Π½ΠΈΠΊΠ°Β β ΠΎΡΠΊΡΡΡΡΡ ΠΊΠ½ΠΈΠ³ Π΄Π»Ρ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΌΠΈΡΠ°
ΠΡΠΎ ΠΊΡΠ°ΡΠΊΠΈΠΉ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ git. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΡΠ½Π½ΠΎΡΡΡ ΠΎΠ± ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ rebase ΠΏΡΠΈ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ.
ΠΠ°ΡΠ°Π»ΡΠ½Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°[ΠΏΡΠ°Π²ΠΈΡΡ]
- git config —global user.
email your.name@domain
- git config —global user.name «Your Name»
- git config —global push.default current
- git clone <url ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ>
Π Π°Π±ΠΎΡΠ° Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ[ΠΏΡΠ°Π²ΠΈΡΡ]
- ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ
git branch <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ> - ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
git checkout <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ> - Π΄Π²Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΠΌΠ΅ΡΡΠ΅
git checkout -b <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ> - ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²Π΅ΡΠΊΠΈ Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
git branch - ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²Π΅ΡΠΊΠΈ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
git branch -r - ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ (ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅)
git push -u origin <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅> - ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ
- git branch -d <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>. ΠΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ git ΠΈΠ½ΠΎΠ³Π΄Π° Π½ΠΎΠ΅Ρ, ΡΡΠΎ Ρ Π²Π°Ρ Π²Π΅ΡΠΊΠ° Π½Π΅ ΡΠ»ΠΈΡΠ° Ρ HEADΠΎΠΌ ΠΈΠ»ΠΈ upstream-branch.
- git branch -D <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>. Π’Π°ΠΊ ΠΎΠ½ ΡΠ΄Π°Π»ΠΈΡ Π² Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ merged status Π²Π΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ.
- cΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ
- —Π²Π·ΡΡΠΈΠ΅, Π±Π΅Π· ΡΠ»Π°Π³Π° rebase Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ merge, Π° Ρ ΡΡΠΈΠΌ ΡΠ»Π°Π³ΠΎΠΌ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ rebase
- git pull —rebase
- git pull Π±Π΅Π· —rebase ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΠΠΠ ΠΠ©ΠΠΠ! — ΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ rebase ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠΈ Π²Π΅ΡΠΎΠΊ.
- Π’Π°ΠΊΠΆΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π·Π°ΠΏΡΡΡΠΈΡΡ
- git config branch.autosetuprebase always
- ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ git pull Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠ»Π°Π³ —rebase
- Π’Π°ΠΊΠΆΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π·Π°ΠΏΡΡΡΠΈΡΡ
- —ΠΎΡΠΏΡΠ°Π²ΠΊΠ° Π½Π° ΡΠ΅ΡΠ²Π΅Ρ. ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ push’a Ρ ΡΠ»Π°Π³ΠΎΠΌ -u Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ Π»ΠΈΡΡ git push
ΠΡΠΈΠΌΠ΅Ρ: CΠ»ΠΈΡΠ½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Ρ master ΡΠ΅ΡΠ΅Π· rebase Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²Π΅ΡΠΊΠΈ master[ΠΏΡΠ°Π²ΠΈΡΡ]
— ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌ master
git checkout master
git pull —rebase
— ΡΠ΅Π±Π΅ΠΉΠ·ΠΈΠΌ Π²Π΅ΡΠΊΠΈ Π½Π° master
git checkout <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>
git rebase master
- master ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, ΡΠΎ Π΅ΡΡΡ Π΅ΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π²Π»ΠΈΡΡ Π² ΠΠ°ΡΡ Π²Π΅ΡΠΊΡ ΠΎΠ±ΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½Π° ΡΡΠΎΠΌ Π½Π°Π΄ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ.
- Π’ΠΎΠ»ΡΠΊΠΎ Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ git pull —rebase(Π² ΡΠ²ΠΎΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅) ΡΠ΄Π΅Π»Π°ΡΡ git push —force origin <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΠ·-Π·Π° ΡΠ΅Π±Π΅ΠΉΠ·Π° <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ> ΠΈ origin/<ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ> ΡΠ°Π·ΠΎΡΠ»ΠΈΡΡ. ΠΠ½Π°ΡΠ΅, Π΅ΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ pull —rebase ΡΠΎ Π²Ρ ΡΠ½ΠΎΠ²Π° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ ΠΊ ΡΠ²ΠΎΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅ ΡΠ²ΠΎΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ.
- Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, Π΄Π΅Π»Π°Π΅ΠΌ fast-forward merge ΠΈ Π²ΡΠ»ΠΈΠ²Π°Π΅ΠΌ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
git checkout master
git merge <ΠΈΠΌΡ Π±ΡΠ°Π½ΡΠ°> (Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ fast-forward)
git push
ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ[ΠΏΡΠ°Π²ΠΈΡΡ]
- Π² Π»ΡΠ±ΠΈΠΌΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅
- git mergetool [—tool=<tool>]
- ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ gui git ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (ΠΠ°Π»Π΅ΡΠ° ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ smartgit)
- ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
- ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ°Ρ ΡΡΡΠΊΠ°, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΊΠ°ΠΊΡΡ-ΡΠΎ Π³Π»ΡΠΏΠΎΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΌΠ΅ΡΠ΄ΠΆΠΈΠ»ΠΈΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ c master):
- git reflog
- git reflog
- Π’Π°ΠΌ Π±ΡΠ΄Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΠ°ΡΠΈΡ
ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. Π Π»ΡΠ±ΠΎΠΌΡ ΠΈΠ· Π½ΠΈΡ
ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡ Π²ΠΏΠΎΠ»Π½Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ:
- git reset —hard HEAD@{n}
- ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
git rebase -i <start_point> (Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΠ΅Π±Π΅ΠΉΠ· Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ start point’a) - ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°
git commit —amend
- ΠΎΡΠΊΠ°Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°
- git reset HEAD~<n> (ΡΠ°ΠΌΠΈ ΡΠ°ΠΉΠ»Ρ Π² working tree ΠΎΡΡΠ°Π½ΡΡΡΡ)
- git reset —hard HEAD~<n> (working tree ΡΠ°ΠΉΠ»Ρ Π½Π΅ ΠΎΡΡΠ°Π½ΡΡΡΡ)
- git reset HEAD~<n> (ΡΠ°ΠΌΠΈ ΡΠ°ΠΉΠ»Ρ Π² working tree ΠΎΡΡΠ°Π½ΡΡΡΡ)
- ΠΎΡΠΊΠ°Ρ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°
- git reset <file name>
- ΠΎΡΠΊΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°
- git checkout HEAD <file name>
- git checkout — <file name> (2-ΠΉ ΡΠΏΠΎΡΠΎΠ± Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ git 1.6.1)
- Π²Π·ΡΡΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΡΠ²ΠΎΠΉ Π±ΡΠ°Π½Ρ
- git cherry-pick <commit>
- Π²Π·ΡΡΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ΡΡΠ΄ ΠΈΠ΄ΡΡΠΈΡ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
- git cherry-pick <commit_from>.
.<commmit_to>
- git cherry-pick <commit_from>.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ[ΠΏΡΠ°Π²ΠΈΡΡ]
git push origin —delete <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ>
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅[ΠΏΡΠ°Π²ΠΈΡΡ]
http://git-scm.com/book
ΠΠΎΠ·ΠΌΠΎΠΆΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ master ΠΈ develop
Git Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ² (ΡΠ°ΡΡΡ 1) / Π₯Π°Π±Ρ
Π§Π°ΡΡΡ 2
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΎΠ½ Π½ΡΠΆΠ΅Π½?
Git — ΡΡΠΎ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ°, Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈ Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅. Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄Π»Ρ ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ — ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠΎΠ².
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Git-a Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΡΠ»ΠΈΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΠΈΡΡΠΎΡΠΈΡ Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Git ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ ΠΈ Π²ΡΠ΅ Π²Π°ΡΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΠ°ΠΏΠΊΠ°Ρ Π½Π° ΠΆΠ΅ΡΡΠΊΠΎΠΌ Π΄ΠΈΡΠΊΠ΅.
Π’Π°ΠΊ ΠΆΠ΅ Π²Π°ΡΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅. ΠΠ±ΡΡΠ½ΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°:
ΠΠ°ΠΆΠ΄Π°Ρ ΡΠΎΡΠΊΠ° ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½ΠΎΡΠΈΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ (commit). Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ commit-a Π΅ΡΡΡ hash (ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ id) ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ. ΠΠ· ΡΠ°ΠΊΠΈΡ commit-ΠΎΠ² ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ Π²Π΅ΡΠΊΠ°. ΠΠ΅ΡΠΊΠ° — ΡΡΠΎ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π΅ΡΡΡ ΡΠ²ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π² ΡΠ΅Π±Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΈΠ· Π΄ΡΡΠ³ΠΈΡ Π²Π΅ΡΠΎΠΊ ΠΈΠ»ΠΈ Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π² Π½ΠΈΡ .
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
ΠΡΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ, ΡΠΎ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΡΡΡΡ ΠΏΡΠΎΡΠ΅ Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΊΡΡΠΆΠΎΠΊ, ΡΡΠΎ commit. Π‘ΡΡΠ΅Π»ΠΎΡΠΊΠΈ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΠ· ΠΊΠ°ΠΊΠΎΠ³ΠΎ commit ΡΠ΄Π΅Π»Π°Π½ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ C3
ΡΠ΄Π΅Π»Π°Π½ ΠΈΠ· Π‘2
ΠΈ Ρ. Π΄. ΠΡΠ΅ ΡΡΠΈ commit Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π² Π²Π΅ΡΠΊΠ΅ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ main
. ΠΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠΊΠ°, ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π΅Π΅ Π½Π°Π·ΡΠ²Π°ΡΡ master
. ΠΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ main*
ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π² ΠΊΠ°ΠΊΠΎΠΌ commit ΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΠΌΡΡ, ΠΏΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ.
Π ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ Π³ΡΠ°Ρ, ΡΠΎΡΡΠΎΡΡΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ (main
) ΠΈ ΡΠ΅ΡΡΡΠ΅Ρ
commit. ΠΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡΡΡ Π² Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΉ Π³ΡΠ°Ρ, ΡΠΎΡΡΠΎΡΡΠΈΠΉ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π²Π΅ΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΠΈΠ²Π°ΡΡΡΡ Π² ΠΎΠ΄Π½Ρ.
ΠΠ± ΡΡΠΎΠΌ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠ°ΡΡΡΡ . ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΠΡΠ½ΠΎΠ²ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Git-ΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ/ΡΠ΅ΡΠΌΠΈΠ½Π°Π». ΠΡΠΎ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ (ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ, Π³ΡΠ°ΡΠΈΠΊΠ°ΠΌΠΈ ΠΈ Ρ.Π΄.). Π Π½ΠΈΡ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΡΡΡΡ ΠΏΠΎΠ·ΠΆΠ΅.
ΠΠΎ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π°, Π²ΡΠ΅ ΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ°ΠΌ Git.
Windows. ΠΡΠΎΡ ΠΎΠ΄ΠΈΠΌ ΠΏΠΎ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅, Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΏΠΎΠ΄ Π²Π°ΡΡ ΠΠ‘ (32 ΠΈΠ»ΠΈ 64 Π±ΠΈΡΠ½ΡΡ), ΡΠΊΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ.
ΠΠ»Ρ Mac OS. ΠΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ ΠΏΠΈΡΠ΅ΠΌ:
#ΠΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Homebrew
brew install git
#ΠΡΠ»ΠΈ Π½Π΅Ρ, ΡΠΎ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
git --version
#ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΎΠΊΠ½ΠΎ, Π³Π΄Π΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Command Line Tools (CLT).
#Π‘ΠΎΠ³Π»Π°ΡΠ°Π΅ΠΌΡΡ ΠΈ ΠΆΠ΄Π΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ. ΠΠΌΠ΅ΡΡΠ΅ Ρ CLT ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΠΈ git
# Debian ΠΈΠ»ΠΈ Ubuntu
sudo apt install git
# CentOS
sudo yum install git
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°
ΠΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ ΡΠ΅Π±Π΅ Git ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ Π΅Π³ΠΎ Π½Π°ΡΡΡΠΎΠΈΠΌ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈ commit, ΡΠΊΠ°Π·ΡΠ²Π°Π»ΡΡ Π°Π²ΡΠΎΡ, ΠΊΡΠΎ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π».
ΠΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» (Linux ΠΈ MacOS) ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠΎΠ»Ρ (Windows) ΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
#Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΈΠΌΡ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
#ΠΠΌΠ΅ΡΡΠΎ <Π²Π°ΡΠ΅_ΠΈΠΌΡ> ΠΌΠΎΠΆΠ½ΠΎ Π²Π²Π΅ΡΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Grisha_Popov
#ΠΠ°Π²ΡΡΠΊΠΈ ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ
git config --global user.name "<Π²Π°ΡΠ΅_ΠΈΠΌΡ>"
#Π’Π΅ΠΏΠ΅ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ email. ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠΎΡ ΠΆΠ΅.
git config --global user.email "<Π°Π΄ΡΠ΅Ρ_ΠΏΠΎΡΡΡ@email.com>"
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ Ρ Git Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
#ΠΠ»Ρ Linux ΠΈ MacOS ΠΏΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ /Users/UserName/Desktop/MyProject
#ΠΠ»Ρ Windows Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π‘://MyProject
cd <ΠΏΡΡΡ_ΠΊ_Π²Π°ΡΠ΅ΠΌΡ_ΠΏΡΠΎΠ΅ΠΊΡΡ>
#ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ/ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
git init
Π’Π΅ΠΏΠ΅ΡΡ Git ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Π½Π΅ΠΌ Π½Π΅Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ commit.
#ΠΠΎΠ±Π°Π²ΠΈΠΌ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² Π½Π°ΠΌ Π±ΡΠ΄ΡΡΡΠΈΠΉ commit
git add .
#ΠΠ»ΠΈ ΡΠ°ΠΊ
git add --all
#ΠΡΠ»ΠΈ Ρ
ΠΎΡΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊ
git add <ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°>
#Π’Π΅ΠΏΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ commit. ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ.
#Π Π½Π΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ ΠΏΡΠΎ ΠΊΠ°Π²ΡΡΠΊΠΈ
git commit -m "<ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ>"
ΠΡΠ»ΠΈΡΠ½ΠΎ. ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ²ΡΠΌ commit.
ΠΡΠΎΡΠ΅ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Git
ΠΠ΅ ΡΡΠΎΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° Π΄Π΅Π»Π°ΡΡ commit. Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡ, ΠΊΠΎΠ³Π΄Π°:
Π‘ΠΎΠ·Π΄Π°Π½ Π½ΠΎΠ²ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»
ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠΊ Π½Π° Π²Π΅ΡΡΡΠΊΠ΅
ΠΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΠΎ ΠΊΠΎΠ΄Ρ
ΠΡ Π·Π°Π²Π΅ΡΡΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠΈΠΉ Π΄Π΅Π½Ρ ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠ΄
ΠΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π΄Π΅ΡΠΆΠ°ΡΡ Π²Π°ΡΡ Π²Π΅ΡΠΊΠΈ Π² ΡΠΈΡΡΠΎΡΠ΅ ΠΈ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ, Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, Π° Π½Π΅ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ.
ΠΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΠ°ΠΊ Ρ ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΠ» ΡΠ°Π½Π΅Π΅, ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Git. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π½ΠΈΠΌ.
ΠΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ Git. ΠΠΎΠ³Ρ ΠΏΠΎΡΠΎΠ²Π΅ΡΠΎΠ²Π°ΡΡ ΡΡΠΈ:
Π― Π½Π΅ Π±ΡΠ΄Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΡΠ΅Π΄Π»Π°Π³Π°Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΡΠΈΠΌ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ Π²ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΠΌ Π½Π° GitHub
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Visual Studio Code (VS Code).
ΠΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° GitHub.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΠ°ΠΏΠΊΡ, Π³Π΄Π΅ Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΡΠ»ΠΈ ΡΠ°ΠΊΠ°Ρ ΠΏΠ°ΠΏΠΊΠ° ΡΠΆΠ΅ Π΅ΡΡΡ, ΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΡ Π½Π΅ Π½Π°Π΄ΠΎ.
ΠΠΎΡΠ»Π΅ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ VS Code .
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ΅Π±Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΊΠΎΠ΄Π° Π΄Π»Ρ JavaScript ΠΈ PHP
ΠΡΠΊΡΠΎΠΉΡΠ΅ Π²Π°ΡΡ ΠΏΠ°ΠΏΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ°Π½Π΅Π΅
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Ρ Π²Π°Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΠ΄Π΅ΡΡ Π±ΡΠ΄ΡΡ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Git-ΠΎΠΌ
ΠΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°
ΠΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ
ΠΡΠ»ΠΈ Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΡΡΡΠΎΠΉ, ΠΊΠ°ΠΊ Ρ ΠΌΠ΅Π½Ρ, ΡΠΎ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» ΠΈ Π½Π°Π·ΠΎΠ²ΠΈΡΠ΅ Π΅Π³ΠΎ
index.
. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ Π² Π½Π΅ΠΌhtml
!
ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡTab
. ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠΊΠ΅Π»Π΅Ρ ΠΏΡΡΡΠΎΠΉ HTML ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ Π½Π°ΠΆΠ°ΡΡctrl+s
ΡΡΠΎΠ±Ρ ΡΠ°ΠΉΠ» ΡΠΎΡ ΡΠ°Π½ΠΈΠ»ΡΡ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π²ΠΎ Π²ΠΊΠ»Π°Π΄Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Git-ΠΎΠΌ.
ΠΡΠΊΡΠΎΠ΅ΡΡΡ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠ΅ ΠΎΠΊΠ½ΠΎ:
ΠΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° GitHub
ΠΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ
1
, ΠΏΠΎΡΠ²ΠΈΡΡΡ Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ. ΠΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π²ΡΠΎΡΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠ»ΠΈ ΡΠ°ΠΌ Π³Π΄Π΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ°Π·Π°...public repository
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅ΡΠ²ΠΈΡ, ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ
Initialize Repository
. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, Π²ΡΡΡΠ½ΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ΅ΡΠ²ΠΈΡ ΠΊΡΠ΄Π° ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²ΡΠ±ΡΠ°Π»ΠΈ «ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Π½Π° GitHub ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ» (ΠΏΡΠ½ΠΊΡ 2), ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡ Π²Π°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π²Ρ
ΠΎΠ΄ΠΈΡΡ Π² ΠΏΠ΅ΡΠ²ΡΠΉ commit. ΠΡΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π³Π°Π»ΠΎΡΠΊΠΈ Ρ Π²ΡΠ΅Ρ
ΡΠ°ΠΉΠ»ΠΎΠ², Π΅ΡΠ»ΠΈ Π½Π΅ ΠΏΡΠΎΡΡΠ°Π²Π»Π΅Π½Ρ ΠΈ ΠΆΠΌΠ΅ΠΌ ΠΠ
. ΠΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΊΠΈΠ½Π΅Ρ Π½Π° ΡΠ°ΠΉΡ GitHub, Π³Π΄Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ Π²Ρ
ΠΎΠ΄ Π² Π°ΠΊΠΊΠ°ΡΠ½Ρ.
ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° GitHub.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ΄Π΅ ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΈΡ
ΡΠ½ΠΎΠ²Π° ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠΉΡΠ΅ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ°ΠΉΠ», Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ Π½Π°ΠΆΠ°ΡΡ crtl+s
(Windows) ΠΈΠ»ΠΈ cmd+s
(MacOS), ΡΡΠΎΠ±Ρ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ». ΠΠ΅ΡΠ½ΠΈΡΠ΅ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π²ΠΎ Π²ΠΊΠ»Π°Π΄Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Git.
ΠΡΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° Π·Π½Π°ΡΠΎΠΊ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Git, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠΈΡΡΡ 1 Π² ΡΠΈΠ½Π΅ΠΌ ΠΊΡΡΠΆΠΊΠ΅. ΠΠ½Π° ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ Π½Π°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ ΠΈ Π½Π΅Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠ΅Π½ΠΎ. ΠΠ°Π²Π°ΠΉΡΠ΅ Π΅Π³ΠΎ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΠΌ ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ:
ΠΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ°ΠΉΠ»Π΅. ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΠΆΠΈΠΌΠ°ΡΡ, ΡΠΊΠ°Π·Π°Π» Π΄Π»Ρ ΡΠΏΡΠ°Π²ΠΊΠΈ
ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π½Π°Ρ ΡΠ°ΠΉΠ» Π΄Π»Ρ Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ commit
ΠΠΈΡΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ commit
ΠΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π½Π°Ρ commit Π² GitHub
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ, Π²Ρ Π½Π°ΡΡΠΈΠ»ΠΈΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ commit ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π΅Π³ΠΎ Π² GitHub!
ΠΡΠΎΠ³
ΠΡΠΎ ΠΏΠ΅ΡΠ²Π°Ρ Π²Π²ΠΎΠ΄Π½Π°Ρ ΡΡΠ°ΡΡΡ ΠΏΠΎ ΡΡΠΈΠ»ΠΈΡΠ΅ Git. ΠΠ΄Π΅ΡΡ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ:
ΠΠ°ΠΊ Π΅Π³ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ
ΠΠ°ΠΊ Π΅Π³ΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ
ΠΠ°ΠΊ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ commit ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ
ΠΠ°ΠΊ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ VS Code, ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Π½Π° GitHub
ΠΠ°Π±Π΅Π³Π°Ρ Π²ΠΏΠ΅ΡΠ΅Π΄, ΡΠΎΠ²Π΅ΡΡΡ Π²Π°ΠΌ ΠΏΠΎΠ³ΡΠ³Π»ΠΈΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git help # ΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ
git clone
git status
git branch
git checkout
git merge
git remote
git fetch
git push
git pull
P.S. ΠΠ»Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΠΎΡΡΠ°Π²Π»Ρ Π²Π°ΠΌ ΡΡΡΠ»ΠΊΡ Π½Π° Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΡΡΠ΅Π½Π°ΠΆΠ΅Ρ ΠΏΠΎ Git.
https://learngitbranching.js.org/
Π ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌΠΌ ΠΊΠ°Π½Π°Π»Π΅ Step by Step , Ρ ΠΏΡΠ±Π»ΠΈΠΊΡΡ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° ΠΈ ΠΏΡΠΎΠ²ΠΎΠΆΡ ΠΎΠ±ΡΡΠ°ΡΡΠΈΠ΅ ΡΡΡΠΈΠΌΡ, Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΆΠ΅Π»Π°ΡΡΠΈΡ .
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ GIT Π² VisualΒ Studio | Microsoft Docs
-
- Π§ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 9Β ΠΌΠΈΠ½
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅
Π’Π΅ΠΏΠ΅ΡΡ GIT ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² VisualΒ Studio 2019.Git is now the default version control experience in Visual Studio 2019. ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 16.6 ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Π½Π°Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ Π½Π°Π±ΠΎΡΠ° ΡΡΠ½ΠΊΡΠΈΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Π°ΡΠΈΡ ΠΎΡΠ·ΡΠ²ΠΎΠ².Since version 16.6, we’ve worked on building out the feature set and iterating on it based on your feedback. ΠΠΎΠ²ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Git ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ΅Π½ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΈΠΌΠ΅ΡΡΠΈΡ Π²ΡΠΏΡΡΠΊ Π²Π΅ΡΡΠΈΠΈ 16.8.The new Git experience is turned on by default for everyone with the release of version 16.8.
Π‘ΠΎΠ²Π΅Ρ
GITΒ β ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠ°ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ, ΡΠ°ΠΊ ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌ ΠΈΠ·ΡΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.Git is the most widely used modern version control system, so whether youβre a professional developer or if youβre learning how to code, Git can be very useful to you. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ GIT, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠ°ΡΡ Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° https://git-scm.com/.If you are new to Git, the https://git-scm.com/ website is a good place to start. ΠΠ° Π½Π΅ΠΌ Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ ΠΏΠ°ΠΌΡΡΠΊΠΈ, ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΊΠ½ΠΈΠ³Ρ ΠΈ Π²ΠΈΠ΄Π΅ΠΎΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π°ΠΌ GIT.There, youβll find cheat sheets, a popular online book, and Git Basics videos.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ GIT Π² Visual StudioHow to use Git in Visual Studio
ΠΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Git Π² Visual StudioΒ 2019. ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΠΊΡΠ°ΡΠΊΠΈΠΌ ΠΎΠ±Π·ΠΎΡΠΎΠΌ, ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π²ΠΈΠ΄Π΅ΠΎ:We’ll walk you through how to use the new Git experience in Visual Studio 2019, but if you’d like to take a quick tour first, check out the following video:
ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΈΠ΄Π΅ΠΎ: 05:27Β ΠΌΠΈΠ½.Video length: 5.27 minutes
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΈ ΡΠΏΠΎΡΠΎΠ±Π° Π½Π°ΡΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Git Π² Visual Studio Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ:There are three ways to start using Git with Visual Studio to be more productive:
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈΒ 16.8 Visual StudioΒ 2019 Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠ΅ΡΠ½ΡΠΌΠΈ Π·Π°ΠΏΠΈΡΡΠΌΠΈ GitHub.Starting also with version 16.8, Visual Studio 2019 includes a fully integrated GitHub account experience. Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ GitHub ΠΈ GitHub Enterprise.You can now add both GitHub and GitHub Enterprise accounts to your keychain. ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΠ°ΠΉΠΊΡΠΎΡΠΎΡΡ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΏΡΠΎΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΡΡΡΠ°ΠΌ GitHub Π² Visual Studio.Youβll be able to add and leverage them just as you do with Microsoft accounts, which means that youβll have an easier time accessing your GitHub resources across Visual Studio. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π Π°Π±ΠΎΡΠ° Ρ ΡΡΠ΅ΡΠ½ΡΠΌΠΈ Π·Π°ΠΏΠΈΡΡΠΌΠΈ GitHub Π² Visual Studio.For more information, see the Work with GitHub accounts in Visual Studio page.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GITCreate a new Git repository
ΠΡΠ»ΠΈ Π²Π°Ρ ΠΊΠΎΠ΄ Π½Π΅ ΡΠ²ΡΠ·Π°Π½ Ρ GIT, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠ°ΡΡ Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GIT. If your code is not associated with Git, you can start by creating a new Git repository. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² ΡΡΡΠΎΠΊΠ΅ ΠΌΠ΅Π½Ρ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ GIT > Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT.To do so, select Git > Create Git Repository from the menu bar. ΠΠ°ΡΠ΅ΠΌ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GIT Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠ²ΠΎΠΈ Π΄Π°Π½Π½ΡΠ΅.Then, in the Create a Git repository dialog box, enter your information.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GIT ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² GitHub.The Create a Git repository dialog box makes it easy to push your new repository to GitHub. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΠ½ΡΠΌ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½Π΅ΠΌΡ Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ Π²Π°Ρ.By default, your new repository is private, which means that you are the only one who can access it. ΠΡΠ»ΠΈ ΡΠ½ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ»Π°ΠΆΠΎΠΊ, ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π»ΡΠ±ΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² GitHub ΡΠΌΠΎΠΆΠ΅Ρ Π΅Π³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ.If you uncheck the box, your repository will be public, which means that anyone on GitHub can view it.
Π‘ΠΎΠ²Π΅Ρ
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ ΠΈΠ»ΠΈ ΡΠ°ΡΡΠ½ΡΠΌ, Π»ΡΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π² GitHub, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΡΠ°ΠΌΠΈ ΠΏΠΎ ΡΠ΅Π±Π΅.Whether your repository is public or private, it’s best to have a remote backup of your code stored securely on GitHub even if you are not working with a team. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΠ΄Ρ Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°.This also makes your code available to you no matter what computer you’re using.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT, Π²ΡΠ±ΡΠ°Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π’ΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ.You can choose to create a local-only Git repository by using the Local only option. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΡΠ·Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ Π»ΡΠ±ΡΠΌ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ ΠΏΡΡΡΡΠΌ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌ Ρ Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° GIT, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ. Or, you can link your repository with any existing empty remote repository on any other Git provider by using the Existing remote option.
ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GITClone an existing Git repository
Π Visual Studio ΠΏΡΠΎΡΠ΅ΡΡ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΡΡ.Visual Studio includes a straightforward clone experience. ΠΡΠ»ΠΈ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Π Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.If you know the URL of the repository that you would like to clone, you can paste the URL in the Repository location section and then choose the disk location you would like Visual Studio to clone to.
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅ URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π² VisualΒ Studio ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GitHub ΠΈΠ»ΠΈ Azure DevOps ΠΈ Π²ΡΠ±ΡΠ°ΡΡ Π΅Π³ΠΎ.If you donβt know the repository URL, Visual Studio makes it easy to browse to and then clone your existing GitHub or Azure DevOps repository.
ΠΡΠΊΡΡΡΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡOpen an existing local repository
ΠΠΎΡΠ»Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GIT Visual Studio ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡ Π΅Π³ΠΎ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π² ΠΌΠ΅Π½Ρ GIT.After youβve cloned a repository or created one, Visual Studio detects the Git repository and adds it to your list of Local Repositories in the Git menu. Π Π½Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΎΡΠΊΡΡΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ GIT ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ.From here, you can quickly access and switch between your Git repositories.
ΠΡΠΎΡΠΌΠΎΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΠΉView files in Solution Explorer
ΠΡΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ VisualΒ Studio ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ GIT, ΡΠΎΡ
ΡΠ°Π½ΡΡ ΠΈ Π·Π°ΠΊΡΡΠ²Π°Ρ Π²ΡΠ΅ ΡΠ°Π½Π΅Π΅ ΠΎΡΠΊΡΡΡΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ.When you clone a repository or open a local repository, Visual Studio switches you into that Git context by saving and closing any previously open solutions and projects. ΠΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΠΏΠ°ΠΏΠΊΡ Π² ΠΊΠΎΡΠ½Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GIT ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π΄Π΅ΡΠ΅Π²ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ.Solution Explorer loads the folder at the root of the Git repository and scans the directory tree for any View files. Π Π½ΠΈΠΌ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΊΠ°ΠΊ CMakeLists.txt ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ SLN.These include files such as CMakeLists.txt or those with the .sln file extension.
Visual Studio Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ°ΠΉΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ.Visual Studio adjusts its View based on which View file you load in Solution Explorer:
- ΠΡΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ ΠΎΠ΄ΠΈΠ½ SLN-ΡΠ°ΠΉΠ», ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅.If you clone a repository that contains a single .sln file, then Solution Explorer directly loads that solution for you.
- ΠΡΠ»ΠΈ ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² SLN Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ½ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΏΠΊΠΈ.If Solution Explorer doesnβt detect any .sln files in your repository, then by default it loads Folder View.
- ΠΡΠ»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² SLN, ΡΠΎ ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ°.If your repository has more than one .sln file, then Solution Explorer shows you the list of available Views for you to choose from.
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΊΡΡΠΈΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ.You can toggle between the currently open View and the list of Views by using the Switch Views button in the Solution Explorer toolbar.
ΠΠΊΠ½ΠΎ «ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ GIT»Git Changes window
GIT ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΈ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ Π½Π° ΡΡΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ.Git tracks file changes in your repo as you work, and separates the files in your repo into three categories. ΠΡΠΎ ΡΠ΅ ΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΏΡΠΈ Π²Π²ΠΎΠ΄Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git status
Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅. These changes are equivalent to what you would see when you enter the
git status
command in the command line:
- Π€Π°ΠΉΠ»Ρ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ: ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ Π½Π΅ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.Unmodified files: These files haven’t changed since your last commit.
- ΠΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ: ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, Π½ΠΎ Π΅ΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ Π΄Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.Modified files: These files have changes since your last commit, but you haven’t yet staged them for the next commit.
- ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ: ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ.Staged files: These files have changes that will be added to the next commit.
Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ Visual Studio ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠΊΠ½Π° ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ GIT.As you do your work, Visual Studio keeps track of the file changes to your project in the Changes section of the Git Changes window.
ΠΠΎΠ³Π΄Π° Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π³ΠΎΡΠΎΠ²Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ + (ΠΏΠ»ΡΡ) Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ, ΠΈΠ»ΠΈ ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ ΡΠ°ΠΉΠ» ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΏΡΠ½ΠΊΡ ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ.When you are ready to stage changes, click the + (plus) button on each file you want to stage, or right-click a file and then select Stage. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ΅Π»ΡΠΊΠΎΠΌ ΠΌΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ «ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅» ( + ) Π² Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΡΠ°Π·Π΄Π΅Π»Π° ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.You can also stage all your modified files with one click by using the stage all + (plus) button at the top of the Changes section.
ΠΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Visual Studio ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ°Π·Π΄Π΅Π» ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. When you stage a change, Visual Studio creates a Staged Changes section. Π’ΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ°Π·Π΄Π΅Π»Π° ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ, Π²ΡΠ±ΡΠ°Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅.Only changes in the Staged Changes section are added to the next commit, which you can do by selecting Commit Staged. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΒ β
git commit -m "Your commit message"
.The equivalent command for this action is git commit -m "Your commit message"
. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡ β Β (ΠΌΠΈΠ½ΡΡ).Changes can also be unstaged by clicking the β (minus) button. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΒ β git reset <file_path>
Π΄Π»Ρ ΠΎΡΠΌΠ΅Π½Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ git reset <directory_path>
Π΄Π»Ρ ΠΎΡΠΌΠ΅Π½Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ
ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.The equivalent command for this action is git reset <file_path>
to unstage a single file or git reset <directory_path>
to unstage all the files in a directory.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ², ΠΏΡΠΎΠΏΡΡΡΠΈΠ² ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ.You can also choose not to stage your modified files by skipping the staging area. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ VisualΒ Studio ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°ΠΏΡΡΠΌΡΡ Π±Π΅Π· ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ.In this case, Visual Studio allows you to commit your changes directly without having to stage them. ΠΡΠΎΡΡΠΎ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅.Just enter your commit message and then select Commit All. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΒ β git commit -a
.The equivalent command for this action is git commit -a
.
Visual Studio ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΈ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ΅Π»ΡΠΊΠΎΠΌ ΠΌΡΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ»ΡΠΊΠΎΠ² ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈ ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΈ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ. Visual Studio also makes it easy to commit and sync with one click by using the Commit All and Push and Commit All and Sync shortcuts. ΠΡΠ»ΠΈ Π΄Π²Π°ΠΆΠ΄Ρ ΡΠ΅Π»ΠΊΠ½ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠ°ΠΉΠ» Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΡΠΎΡΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠ°ΠΉΠ»Π° Ρ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ.When you double-click any file in the Changes and the Staged changes sections, you can see a line-by-line comparison with the unmodified version of the file.
Π‘ΠΎΠ²Π΅Ρ
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ AzureΒ DevOps, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΡΠ·Π°ΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ AzureΒ DevOps Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠ΅ΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΈΠΌΠ²ΠΎΠ» #.You can associate an Azure DevOps work item with a commit by using the «#» character if you are connected to the Azure DevOps repository. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ AzureΒ DevOps, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Team Explorer > Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌΠΈ.You can connect your Azure DevOps repository through Team Explorer > Manage Connections.
ΠΡΠ±ΠΎΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π²Π΅ΡΠ²ΠΈSelect an existing branch
Π Visual Studio ΡΠ΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΠ²Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π² ΡΠ΅Π»Π΅ΠΊΡΠΎΡΠ΅ Π² Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π° ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ GIT.Visual Studio displays the current branch in the selector at the top of the Git Changes window.
Π’Π΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΠ²Ρ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Π° Π² ΡΡΡΠΎΠΊΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² ΠΏΡΠ°Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ³Π»Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ VisualΒ Studio.The current branch is also available in the status bar on the bottom-right corner of the Visual Studio IDE.
Π ΠΎΠ±ΠΎΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠΌΠ΅ΡΡΠΈΠΌΠΈΡΡ Π²Π΅ΡΠ²ΡΠΌΠΈ.From both locations, you can switch between existing branches.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠ²ΠΈCreate a new branch
ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ.You can also create a new branch. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΒ β git checkout <branchname>
.The equivalent command for this action is git checkout <branchname>
.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠ²Ρ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π²Π΅ΡΡΠΈ Π΅Π΅ ΠΈΠΌΡ ΠΈ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ Π²Π΅ΡΠ²Ρ, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½Π° Π΄Π°Π½Π½Π°Ρ.Creating a new branch is as simple as entering the branch name and basing it off an existing branch.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠ²Ρ.You can choose an existing local or remote branch as the base. ΠΡΠ»ΠΈ ΡΠ»Π°ΠΆΠΎΠΊ ΠΠ·Π²Π»Π΅ΡΡ Π²Π΅ΡΠ²Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½, Π²Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ ΠΏΠΎΡΠ»Π΅ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ.The Checkout branch checkbox automatically switches you to the newly created branch. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΒ β git checkout -b <new-branch><existing-branch>
.The equivalent command for this action is git checkout -b <new-branch><existing-branch>
.
ΠΠΊΠ½ΠΎ «Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT»Git Repository window
Π Visual Studio ΠΈΠΌΠ΅Π΅ΡΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π²ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ Π²ΡΠ΅ Π²Π΅ΡΠ²ΠΈ, ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΈ ΠΆΡΡΠ½Π°Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.Visual Studio has a new Git Repository window, which is a consolidated view of all the details in your repository, including all of the branches, remotes, and commit histories. ΠΡΠΊΡΡΡΡ ΡΡΠΎ ΠΎΠΊΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ· ΠΌΠ΅Π½Ρ GIT ΠΈΠ»ΠΈ ΠΠΈΠ΄ Π»ΠΈΠ±ΠΎ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· ΡΡΡΠΎΠΊΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ.You can access this window directly from either Git or View on the menu bar or from the status bar.
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠ²ΡΠΌΠΈManage branches
ΠΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ Π² ΠΌΠ΅Π½Ρ GIT ΠΏΡΠ½ΠΊΡΠ° Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠ²ΡΠΌΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠ²Π΅ΠΉ Π² ΠΎΠΊΠ½Π΅ Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT.When you select Manage Branches from the Git menu, youβll see the branches tree-view in the Git Repository window. Π Π»Π΅Π²ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ, ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π²Π΅ΡΠ²Π΅ΠΉ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Π² Π΄ΡΡΠ³ΡΡ, ΠΎΡΠ±ΠΎΡΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ Π΄ΡΡΠ³ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ.From the left pane, you can use the right-click context menu to checkout branches, create new branches, merge, rebase, cherry-pick, and more. Π©Π΅Π»ΠΊΠ½ΡΠ² Π²Π΅ΡΠ²Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΅Π΅ ΠΆΡΡΠ½Π°Π» ΡΠΈΠΊΡΠ°ΡΠΈΠΉ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ.When you click the branch, you can see a preview of its commit history in the right pane.
ΠΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΈ ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈIncoming and outgoing commits
ΠΡΠΈ ΠΏΡΠΈΠ½Π΅ΡΠ΅Π½ΠΈΠΈ Π²Π΅ΡΠ²ΠΈ Π² ΠΎΠΊΠ½Π΅ ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ GIT ΠΏΠΎΠ΄ ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡΠ΅ΠΌΡΡ ΡΠΏΠΈΡΠΊΠΎΠΌ Π²Π΅ΡΠ²Π΅ΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ Π²ΡΡΡΠ½ΡΡΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ.When you fetch a branch, the Git Changes window has an indicator under the branch drop-down, which displays the number of unpulled commits from the remote branch. ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΈΡΠ»ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Ρ.This indicator also shows you the number of unpushed local commits.
ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠ»ΠΊΠΎΠΉ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΆΡΡΠ½Π°Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΉ ΡΡΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Π² ΠΎΠΊΠ½Π΅ Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT.The indicator also functions as a link to take you to the commit history of that branch in the Git Repository window. Π Π½Π°ΡΠ°Π»Π΅ ΠΆΡΡΠ½Π°Π»Π° ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΡΡΠΈΡ Π²Ρ ΠΎΠ΄ΡΡΠΈΡ ΠΈ ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΡ ΡΠΈΠΊΡΠ°ΡΠΈΡΡ .The top of the history now displays the details of these incoming and outgoing commits. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΡΡΠ½ΡΡΡ ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.From here, you can also decide to Pull or Push the commits.
Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΠΈCommit Details
ΠΡΠ»ΠΈ Π΄Π²Π°ΠΆΠ΄Ρ ΡΠ΅Π»ΠΊΠ½ΡΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, Π² VisualΒ Studio ΠΎΡΠΊΡΠΎΡΡΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π½Π΅ΠΉ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ².When you double-click a Commit, Visual Studio opens its details in a separate tool window. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΡΠ±ΡΠΎΡΠΈΡΡ Π΅Π΅, ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π³ Π΄Π»Ρ Π½Π΅Π΅.From here you can revert the commit, reset the commit, amend the commit message, or create a tag on the commit. ΠΡΠ»ΠΈ ΡΠ΅Π»ΠΊΠ½ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π² ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, Π² VisualΒ Studio ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΠ΄ΠΎΠΌ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΈ Π΅Π΅ ΠΏΡΠ΅Π΄ΠΎΠΊ.When you click a changed file in the commit, Visual Studio opens the side-by-side Diff view of the commit and its parent.
Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΡΠ»ΠΈΡΠ½ΠΈΡHandle merge conflicts
ΠΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ, Π΅ΡΠ»ΠΈ Π΄Π²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°ΠΉΠ»Π΅ ΠΈ GIT Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ.Conflicts can occur during a merge if two developers modify the same lines in a file and Git doesnβt automatically know which is correct. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ GIT ΠΏΡΠ΅ΡΡΠ²Π°Π΅Ρ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΈ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΎ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ.Git halts the merge and informs you that you are in a conflicted state.
Π Visual Studio ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π²ΡΡΠ²Π»ΡΡΡ ΠΈ ΡΡΡΡΠ°Π½ΡΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ.Visual Studio makes it easy to identify and resolve a merge conflict. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π² Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π° Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT ΠΈΠΌΠ΅Π΅ΡΡΡ Π·ΠΎΠ»ΠΎΡΠΈΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΠΏΠ°Π½Π΅Π»Ρ.First, the Git Repository window shows a gold info bar at the top of the window.
Π ΠΎΠΊΠ½Π΅ ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ GIT ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π‘Π»ΠΈΡΠ½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°ΠΌΠΈ, ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΌ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΡΠ°ΠΉΠ»Ρ, ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ Π±ΡΠ»ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ.The Git Changes window also displays a βMerge is in progress with conflictsβ message, with the unmerged files in their separate section below it.
ΠΠΎ Π΅ΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΡΠΈΡ ΠΎΠΊΠΎΠ½ Π½Π΅ ΠΎΡΠΊΡΡΡΠΎ ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΠ΅ ΠΊ ΡΠ°ΠΉΠ»Ρ Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°ΠΌΠΈ ΡΠ»ΠΈΡΠ½ΠΈΡ, Π²Π°ΠΌ Π½Π΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΈΡΠΊΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ:But if you have neither of these windows open, and instead you go to the file that has merge conflicts, you wonβt have to search for the following text:
<<<<<<< HEAD
=======
>>>>>>> main
ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π² Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΡΡΡΠ°Π½ΠΈΡΡ Π² VisualΒ Studio ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π·ΠΎΠ»ΠΎΡΠΈΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΠΏΠ°Π½Π΅Π»Ρ Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Π² ΠΎΡΠΊΡΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅.Instead, Visual Studio displays a gold info bar on the top of the page that indicates that the opened file has conflicts. Π©Π΅Π»ΠΊΠ½ΠΈΡΠ΅ ΡΡΡΠ»ΠΊΡ, ΡΡΠΎΠ±Ρ ΠΎΡΠΊΡΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΡΠ»ΠΈΡΠ½ΠΈΡ.Then, you can click the link to open the Merge Editor.
Π Π΅Π΄Π°ΠΊΡΠΎΡ ΡΠ»ΠΈΡΠ½ΠΈΡThe Merge Editor
Π Π΅Π΄Π°ΠΊΡΠΎΡ ΡΠ»ΠΈΡΠ½ΠΈΡ Π² Visual Studio ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠ΅Ρ ΡΡΠΎΡΠΎΠ½Π½Π΅Π΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅: Π² Π½Π΅ΠΌ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΡΡ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ΅ΠΊΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ.The Merge Editor in Visual Studio is a three-way merge tool that displays the incoming changes, your current changes, and the result of the merge. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π²Π²Π΅ΡΡ Ρ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°ΠΌΠΈ ΠΈ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π΅.You can use the tool bar at the top level of the Merge Editor to navigate between conflicts and auto-merged differences in the file.
ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠΊΡΡΡΠΈΡ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠΊΡΡΡΠΈΡ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ Π² ΡΠ»ΠΎΠ²Π°Ρ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΌΠ°ΠΊΠ΅ΡΠ°.You can also use the toggles to show/hide differences, show/hide word differences, and customize the layout. ΠΠ²Π΅ΡΡ Ρ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ Π΅ΡΡΡ ΡΠ»Π°ΠΆΠΊΠΈ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ Π½Π° Π΄ΡΡΠ³ΡΡ.There are checkboxes on the top of each side that you can use to take all the changes from one side or the other. Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π°ΠΆΠΊΠΈ ΡΠ»Π΅Π²Π° ΠΎΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡΠΈΡ ΡΡΡΠΎΠΊ Ρ Π»ΡΠ±ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ.But to take individual changes, you can click the checkboxes to the left of the conflicting lines on either side. ΠΠ°Π²Π΅ΡΡΠΈΠ² ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ², Π½Π°ΠΆΠΌΠΈΡΠ΅ Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΡΠΈΠ½ΡΡΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅.Finally, when you finish resolving the conflicts, you can select the Accept Merge button in the Merge Editor. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ Π²Π²Π΅ΡΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ.You then write a commit message and commit the changes to complete the resolution.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² GITPersonalize your Git settings
Π§ΡΠΎΠ±Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ GIT Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π° Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π² ΡΡΡΠΎΠΊΠ΅ ΠΌΠ΅Π½Ρ ΠΏΡΠ½ΠΊΡΡ GIT > ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈΠ»ΠΈ Π‘Π΅ΡΠ²ΠΈΡ > ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ > Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.To personalize and customize your Git settings at a repository level as well as at a global level, go to either Git > Settings on the menu bar, or to Tools > Options > Source Control on the menu bar. ΠΠ°ΡΠ΅ΠΌ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ.Then, choose the options you want.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Team Explorer Π² VisualΒ StudioHow to use the full Team Explorer experience in Visual Studio
ΠΠΎΠ²ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ GIT β ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² VisualΒ Studio 2019 Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 16.8.The new Git experience is the default version control system in Visual Studio 2019 from version 16.8 onwards. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΡΡΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ.However, if you want to turn it off, you can. Π§ΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ Π² Team Explorer Π΄Π»Ρ Git, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π‘ΡΠ΅Π΄ΡΡΠ²Π° > ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ > Π‘ΡΠ΅Π΄Π° > Π€ΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΈ ΡΠ½ΠΈΠΌΠΈΡΠ΅ ΡΠ»Π°ΠΆΠΎΠΊ ΠΠΎΠ²ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Git.Go to Tools > Options > Environment > Preview Features and then toggle the New Git user experience checkbox, which will switch you back to Team Explorer for Git.
Π§ΡΠΎ Π΄Π°Π»ΡΡΠ΅?What’s next
Π₯ΠΎΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ GIT ΡΠ΅ΠΏΠ΅ΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² VisualΒ Studio 2019 Π²Π΅ΡΡΠΈΠΈ 16.8, ΠΌΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ Π΅Π³ΠΎ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ.While the new Git experience is now on by default in Visual Studio 2019 version 16.8, we continue to add new features to enhance the experience. Π§ΡΠΎΠ±Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π½ΠΎΠ²ΡΠΌΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡΠΌΠΈ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° GIT Π² ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ΡΠΊΠ°ΡΠ°ΠΉΡΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΅Π΅ ΡΠΎ ΡΡΡΠ°Π½ΠΈΡΡ Visual Studio Preview.If you’d like to check out new updates to the Git experience in a Preview release, you can download and install it from the Visual Studio Preview page.
ΠΠ°ΠΆΠ½ΠΎ!
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΎΡΠΏΡΠ°Π²ΡΡΠ΅ Π΅Π³ΠΎ Π½Π°ΠΌ.If you have a suggestion for us, please let us know! ΠΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ°Π΄Ρ Π²Π°ΡΠ΅ΠΌΡ ΡΡΠ°ΡΡΠΈΡ Π² ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° ΠΏΠΎΡΡΠ°Π»Π΅ Π‘ΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².We appreciate the opportunity to engage with you on design decisions via the Developer Community portal.
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·Π΄Π΅Π»See also
Git: ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ . Π Π°Π·Π±ΠΈΡΠ°Π΅ΠΌΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ
Β«Git: The Beginnerβs Guide to Understanding Core Version Control
ConceptsΒ».
Git ΡΡΠΎ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π²
Π°ΡΡΠ΅Π½Π°Π»Π΅ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΡΠΊΠ²Π°Π»ΡΠ½ΠΎ Π½Π° Π΄Π½ΡΡ
ΡΡΠΎΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ» ΠΌΠ½Π΅ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ
Π±ΠΎΠ»ΡΡΡΡ ΠΎΡΠΈΠ±ΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΠ» Π²
ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½ (ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΡ Π²ΠΈΠ½Π°), ΠΈ
ΡΡΠ»ΠΎ Π½Π° ΡΡΠΎ Π²ΡΠ΅Π³ΠΎ 20 ΠΌΠΈΠ½ΡΡ. ΠΠ΅Π· Git ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅
ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π·Π°Π½ΡΠ»ΠΎ Π±Ρ
Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ.
ΠΠΎΡΡΠΎΠΌΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ΄Π΅Π»ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
Π½Π° ΡΠΎ, ΡΡΠΎΠ±Ρ Ρ
ΠΎΡΠΎΡΠ΅Π½ΡΠΊΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π²
ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π΅ Git: ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³Π΅ ΠΈ
ΠΊΠΎΠΌΠΌΠΈΡΠ°Ρ
.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ
Π½ΠΈΡΠ΅Π³ΠΎ ΠΎ GitHub β ΡΡΠΎΡΠΎΠ½Π½Π΅ΠΌ ΡΠ΅ΡΠ²ΠΈΡΠ΅,
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΌ ΡΠΎΡ
ΡΠ°Π½ΡΡΡ ΠΊΠΎΠ΄ Π² ΠΎΠ±Π»Π°ΠΊΠ΅. Git
Π»ΠΎΠΊΠ°Π»Π΅Π½, Π° GitHub ΡΡΠΎ ΠΎΠ±Π»Π°ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΠΎ Π΄Π²Π° ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π½ΡΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°,
Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΎΠ±ΡΠ΅Π΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ?
ΠΡΠ»ΠΈ Π²Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π·ΡΠΎΡΠ»ΡΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ,
Π²Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΌΠΈΡ Π΄ΠΎ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ
Google Drive/Docs/Sheets ΠΈ Π²Π°ΠΌ Π·Π½Π°ΠΊΠΎΠΌΡ ΡΠΈΡΡΠ°ΡΠΈΠΈ
Π²ΡΠΎΠ΄Π΅ ΡΠ°ΠΊΠΎΠΉ, ΠΊΠ°ΠΊ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅:
Group_Paper_All_4_Members_Sections_Included_Final_Draft_Final_3π.docx
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ Π³ΡΡΠΏΠΏΠΎΠ²ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ
Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΡΡΠ°ΡΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ
Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΏΠΈΠΉ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°,
Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ².
ΠΡΠ»ΠΈ Π΄Π²Π° ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ
ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, ΠΊΡΠΎ-ΡΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ΄Π΅Ρ Π²ΡΡΡΠ½ΡΡ
ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈ ΡΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅
ΡΠ΅Π΄Π°ΠΊΡΠΈΠΈ.
Π Π΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ
ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΡΠΎΡΡΠΎ Π½Π΅
ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π»ΠΎ. ΠΡΠΎ Π±ΡΠ» ΠΠΈΠΊΠΈΠΉ ΠΠ°ΠΏΠ°Π΄.
Git ΡΠ΅ΡΠ°Π΅Ρ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²Ρ ΠΏΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄ Π΄Π»Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ
ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΈ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅
ΡΡΠΎ-ΡΠΎ Π»ΠΎΠΌΠ°Π΅ΡΠ΅ Π² Π½Π΅ΠΌ β ΡΡΠΎ-ΡΠΎ, ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ
ΡΠ°Π±ΠΎΡΠ°Π²ΡΠ΅Π΅ ΡΠ°Π½Π΅Π΅. ΠΡ Π½Π΅ ΠΈΠΌΠ΅Π΅ΡΠ΅
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π³Π΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡΡΡΠ΅ΡΡΡ Π±Π°Π³
ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ. Π Π²Ρ ΡΠΆΠ΅ Π·Π°ΠΊΡΡΠ»ΠΈ
ΡΠ°ΠΉΠ» Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅, ΡΠ°ΠΊ ΡΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅
ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. Π
ΡΠ°ΠΊΠΈΡ
ΡΠΈΡΡΠ°ΡΠΈΡΡ
Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Git.
ΠΠ°Π΄Π½ΠΎ, Π° ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ Git ΠΌΠΎΠΆΠ΅Ρ
ΠΏΠΎΠΌΠΎΡΡ?
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Git β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΡΠ΅ΠΊ
ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ Π² Π²Π°ΡΠΈΡ
ΡΠ°ΠΉΠ»Π°Ρ
. ΠΠ½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΡΠΎ Π² Π²ΠΈΠ΄Π΅ ΡΠΎΡΠ΅ΠΊ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ
Π² Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³ΡΠ°Ρ
: Π²Ρ Π΄ΠΎΡ
ΠΎΠ΄ΠΈΡΠ΅ Π΄ΠΎ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ
ΡΡΠΎΠ²Π½Ρ, ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΠ΅ΡΡ, ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, ΡΡΠΎ
Π±Ρ Π²Ρ Π½ΠΈ ΡΠ΄Π΅Π»Π°Π»ΠΈ, Π²Ρ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ
Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΡΠΎΡΠΊΠ΅ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ, Π²Π°ΠΌ Π½Π΅
ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΡΠΎΡ
ΠΎΠ΄ΠΈΡΡ Π²ΡΡ ΠΈΠ³ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ.
Π£ Git Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΡΡ
Π°ΡΠΏΠ΅ΠΊΡΠΎΠ², Π½ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ β
ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΡΠ΅ΠΊ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅,
ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ
Π½ΠΈΠΌ ΠΏΠΎΠ·ΠΆΠ΅.
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Git?
ΠΡΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Git ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
Π² Π΄Π²Π° ΡΡΠ°ΠΏΠ°:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ
ΡΠ°ΠΉΠ»ΠΎΠ² Π² Π·ΠΎΠ½Ρ ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³Π°, Ρ.Β Π΅.,
ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΊ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ
(ΠΊΠΎΠΌΠΌΠΈΡΡ) - Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠΎΠ΄Π° (ΠΊΠΎΠΌΠΌΠΈΡ).
ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ
ΠΡ
ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠ΅Π±Π΅ ΡΡΠΈ ΡΡΠ°ΠΏΡ Π²
Π²ΠΈΠ΄Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠ°ΡΠΎΠΌΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌΠ°
β ΡΠ°ΠΊΠΎΠ³ΠΎ, Π³Π΄Π΅ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΡΡ
ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠΈΡΡ ΠΈΡ
Π² ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ
ΠΊΠ½ΠΈΠ³Π΅. ΠΠ° ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠΎΠ»ΠΎΠ΄Ρ,
ΡΡΠΎΠ±Ρ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅, Ρ Π³ΠΎΠ²ΠΎΡΡ ΠΎ
ΡΠ°ΠΊΠΎΠΌ Π°Π»ΡΠ±ΠΎΠΌΠ΅:
ΠΡ Π»Π°Π΄Π½ΠΎ, Ρ Π½Π΅ ΠΠΠ‘Π’ΠΠΠ¬ΠΠ ΡΡΠ°Ρ.
Π‘Π½Π°ΡΠ°Π»Π° Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΠΊΡΡΡ ΡΠ½ΠΈΠΌΠΊΠΎΠ²
ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ. ΠΠΎΠ³Π΄Π° Π²Ρ ΡΡΠΎ-ΡΠΎ
ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΡΠ΅ΡΠ΅, ΡΡΠΎ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π°
Π²Π°Ρ ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌ. ΠΡ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π°
ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ΅,
ΠΊΠΎΡΠΎΡΡΠ΅ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΡΡ ΠΈ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ
Π² Π°Π»ΡΠ±ΠΎΠΌΠ΅. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΠ½ΠΈΠΌΠΊΠΈ Π²Π°ΠΌ
Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΡΡΡΡ ΠΈ Π²Ρ Π·Π°Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΡ
ΠΏΠ΅ΡΠ΅ΡΠ½ΡΡΡ
Π·Π°Π½ΠΎΠ²ΠΎ.
ΠΠ°Π»Π΅Π΅ Π²Ρ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ· ΡΠ½ΡΡΡΡ
ΡΠΎΡΠΎ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π² ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌ.
ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΡΡΠΎ Π²Ρ ΡΠΆΠ΅ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°Π»ΠΈ
ΡΠ²ΠΎΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ ΡΠ°Π·Π»ΠΎΠΆΠΈΠ»ΠΈ ΠΈΡ
ΡΡΠ΄ΠΎΠΌ Ρ ΠΏΡΡΡΠΎΠΉ
ΡΡΡΠ°Π½ΠΈΡΠ΅ΠΉ Π°Π»ΡΠ±ΠΎΠΌΠ°. ΠΡΠΎ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ Π·ΠΎΠ½Ρ
ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³Π°: Π²Ρ Π΅ΡΠ΅ Π½Π΅ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠΈΠ»ΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ
Π² Π°Π»ΡΠ±ΠΎΠΌ, Π½ΠΎ Π³ΠΎΡΠΎΠ²ΠΈΡΠ΅ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΎ, Π²Ρ
Π½Π°Π΄Π΅ΠΆΠ½ΠΎ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»ΡΠ΅ΡΠ΅ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΈ Π½Π°
ΡΡΡΠ°Π½ΠΈΡΡ ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌΠ°. ΠΡΠΈΡΠ΅ΠΌ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ
Ρ
ΠΎΡΠΎΡΠ΅Π³ΠΎ Π°Π»ΡΠ±ΠΎΠΌΠ° Π²Π°ΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΊ
ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΠΌ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΈΠ»ΠΈ
Π½Π°Π·Π²Π°Π½ΠΈΡ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠ΅ ΡΠΎΠ±ΡΡΠΈΡ Π½Π° ΡΠΎΡΠΎ.
ΠΡΠΎΠ΄Π΅Π»Π°Π² Π²ΡΠ΅ Π²ΡΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅, Π²Ρ
Π²ΡΠ΅Π³Π΄Π° ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅
Π²Π°ΡΠ΅Π³ΠΎ ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌΠ° ΠΈ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡΡ, ΠΊΠ°ΠΊ Π²ΡΠ΅
Π±ΡΠ»ΠΎ Π² ΡΠΎΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²Π°ΡΠ΅ΠΉ ΠΆΠΈΠ·Π½ΠΈ.
ΠΠ°ΠΊΠΎΠ΅ ΡΡΠΎ ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊ
Git?
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ ΡΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ ΠΊ Git.
- Π‘Π°ΠΌ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΎΡΠΎΡΡΠ΅ΠΌΠΊΠΈ β Π°Π½Π°Π»ΠΎΠ³
Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°
(Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅
ΡΠ°ΠΉΠ»ΠΎΠ²). - ΠΡΠ±ΠΎΡ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅
ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π² Π°Π»ΡΠ±ΠΎΠΌ, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π·ΠΎΠ½Ρ ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³Π°. - ΠΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΠ΅ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ
Π°Π»ΡΠ±ΠΎΠΌΠ° ΡΡΠΎ ΠΊΠΎΠΌΠΌΠΈΡ β ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ Π²ΡΠ΅ ΡΡΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅.
Π€ΠΎΡΠΎΡΡΠ΅ΠΌΠΊΠ° Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΎΠ³Π΄Π° Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΡΠ½ΠΈΠΌΠΊΠΈ, ΡΡΠΎ ΠΏΠΎΡ
ΠΎΠΆΠ΅
Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π²Π½ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π°Ρ
ΠΏΡΠΎΠ΅ΠΊΡ β ΠΏΠΈΡΠ΅ΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΠ΅
ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΠ΄Π°Π»ΡΠ΅ΡΠ΅ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ
Ρ.Β Π΄. ΠΡ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π²
ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ Π²
Git-ΠΊΠΎΠΌΠΌΠΈΡΠ΅ (Β«ΡΠΎΡΠΊΠ΅ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡΒ»). Π Π°Π±ΠΎΡΠ°
Π΅ΡΠ΅ Π½Π΅ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π°, Π½ΠΈΡΡΠΎ ΠΈΠ· ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ
ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Ρ Π²ΡΠ΅Π³Π΄Π°
ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠΎ-ΡΠΎ Π½ΠΎΠ²ΠΎΠ΅, ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ
ΡΡΠ°ΡΠΎΠ΅, ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ
ΠΆΠ΅Π»Π°Π½ΠΈΡ.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Git Π½Π° ΡΡΠΎΠΌ
ΡΡΠ°ΠΏΠ΅, β ΡΠ»Π΅Π΄ΠΈΡ Π·Π° Π²Π°ΡΠΈΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ,
ΡΡΠΎΠ±Ρ Π·Π½Π°ΡΡ, ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΎΡΡ Π»ΠΈ ΡΡΠΎ-ΡΠΎ ΡΠΎ
Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΡΠ»ΠΈ Π²Ρ
Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΡ ΠΊΠΎΠ΄Π°, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ
Π΅Π΅, Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Git Π² ΡΠ΅Π»ΠΎΠΌ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅
ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ. ΠΡΠ»ΠΈ Π²Ρ Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ 500 ΡΡΡΠΎΠΊ
ΠΊΠΎΠ΄Π° Π² Π΄Π΅ΡΡΡΠΊΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ², Git Π±ΡΠ΄Π΅Ρ ΡΠΎΡΠ½ΠΎ
Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΠΊΠ°ΠΊΠΈΡ
ΡΠ°ΠΉΠ»Π°Ρ
Π±ΡΠ»ΠΈ
Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ. ΠΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ
ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡΡΡ Π² Π΅Π³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ½ Π½ΠΈΡΠ΅Π³ΠΎ
Π½Π΅ ΡΠΎΡ
ΡΠ°Π½ΠΈΡ Π² ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΏΠΎΠΊΠ°
Π²Ρ Π½Π΅ ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ, Π½ΠΎ ΠΎΠ½ ΠΏΡΠΈΡΡΠ°Π»ΡΠ½ΠΎ
ΡΠ»Π΅Π΄ΠΈΡ Π·Π° Π²Π°ΠΌΠΈ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ΅, ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΎΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° ΠΆΠ΅ΡΡΠΊΠΎΠΌ Π΄ΠΈΡΠΊΠ΅. Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π²Π°Ρ ΠΊΠΎΠ΄ Π΅ΠΆΠ΅ΡΠ΅ΠΊΡΠ½Π΄Π½ΠΎ, Π½ΠΎ ΠΌΡ Π½Π΅ ΡΡΠΎ Π·Π΄Π΅ΡΡ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ. ΠΠΎΠ³Π΄Π° Ρ Π³ΠΎΠ²ΠΎΡΡ ΠΎ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π² Git, Ρ ΠΈΠΌΠ΅Ρ Π² Π²ΠΈΠ΄Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π²Π°ΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
Π Π°ΡΠΏΠ΅ΡΠ°ΡΠΊΠ° (ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ°)
Π²ΡΠ±ΡΠ°Π½Π½ΡΡ
ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ
Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π½Π΅ΡΠ΅Π½Π½ΡΡ
Π² ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
Π² Π·ΠΎΠ½Ρ ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³Π°
Π Git ΡΡΠ° ΡΠ°Π·Π° ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ
Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. Π‘Π°ΠΌ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ
Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³. ΠΡΠΈ ΡΡΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ
Π½Π΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ, ΡΡΠΎ Π»ΠΈΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ
ΠΊΠΎΠΌΠΌΠΈΡΡ.
ΠΠΎΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ
-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ°ΠΉΠ»ΠΎΠ²
Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΅ΡΠΈΡΡ Π΅ΡΠ΅
ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ. ΠΠΈΠΊΠ°ΠΊΠΈΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ!
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Git Π΅ΡΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ ΠΏΠΎ ΡΡΡΠΈ Π½Π΅
ΡΠΎΡ
ΡΠ°Π½ΠΈΠ», Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³
ΠΈ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ
Π² ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΉΠ», ΡΡΠΎ ΠΈ ΡΠ°Π½ΡΡΠ΅. ΠΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Π²Ρ
ΡΠ΅ΡΠΈΠ»ΠΈ ΡΠ½ΡΡΡ ΠΈ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΡΡ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ
ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ, ΡΡΠΎΠ±Ρ Π·Π°ΡΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΡ
Π²
Π°Π»ΡΠ±ΠΎΠΌ.
ΠΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΠ΅ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ Π½Π°
ΡΡΡΠ°Π½ΠΈΡΠ΅ Π°Π»ΡΠ±ΠΎΠΌΠ° Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ
ΠΊΠΎΠ΄Π°
ΠΡΠΎ Π²ΡΠΎΡΠΎΠΉ (ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ) ΡΡΠ°ΠΏ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ
Β«ΡΠΎΡΠΊΠΈ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡΒ» (ΠΊΠΎΠΌΠΌΠΈΡΠ°). ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ
ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅:
Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
ΠΊΠΎΠΌΠΌΠΈΡΠ°. Π ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅
ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΡΡ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ,
ΠΊΠΎΡΠΎΡΡΠΉ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ
Π°Π»ΡΠ±ΠΎΠΌ, ΠΌΠΎΠ³ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΡΡΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ Π·Π½Π°ΡΠ°Ρ
Π΄Π»Ρ Π²Π°Ρ. Π Git Π²Ρ ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ
ΠΎΠΏΠΈΡΠ°ΡΡ ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ
ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΠ΅ Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Π΅.
ΠΡΠ»ΠΈ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠΈΡΠ°ΡΡ ΠΏΠ»ΠΎΡ ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΏΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π΅Π½ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΈΡΠ°ΡΠ΅Π»Ρ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ Π΄Π»Ρ Π²Π°Ρ. (Π§ΡΠΎ Ρ ΠΎΡΠΎΡΠ΅Π³ΠΎ Π² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ Β«ΠΠ½Π΅ΡΠ΅Π½Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΒ», Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠ½ΡΡΠΈΡ Π½Π΅ ΠΈΠΌΠ΅Π΅ΡΠ΅, ΡΡΠΎ ΡΡΠΎ Π·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ? ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΡΡΠΎ Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ Π² Π°Π»ΡΠ±ΠΎΠΌΠ΅ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡ Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΡΡ Β«ΠΠ΄Π΅ΡΡ ΡΠ½ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π»ΡΠ΄ΠΈΒ»).
Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π±Π΅ ΠΈ ΡΠ²ΠΎΠΈΠΌ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ: Π²ΡΠ΅Π³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Ρ ΠΎΡΠΎΡΠΈΠ΅, ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠ΅ΡΠΊΠΎ ΡΠΎΠΎΠ±ΡΠ°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π²Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²Π½Π΅ΡΠ»ΠΈ.
Π Π°Π±ΠΎΡΠ° Ρ Git
ΠΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΉ, ΠΈΠ΄Π΅ΠΌ Π΄Π°Π»ΡΡΠ΅!
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ
, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ Git Ρ Π²Π°Ρ ΡΠΆΠ΅
ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½. ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» (ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ
ΡΡΡΠΎΠΊΡ) ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git --version
. ΠΡΠ»ΠΈ Π²ΡΡΠ²Π΅ΡΠΈΡΡΡ Π½ΠΎΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ,
ΠΏΡΠΎΠΏΡΡΠΊΠ°ΠΉΡΠ΅ ΡΠ°Π³ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΡΠΈΡΠ°ΠΉΡΠ΅
Π΄Π°Π»ΡΡΠ΅. ΠΡΠ»ΠΈ Π²Π°Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΡ,
ΡΡΠΎ Π²Ρ ΠΈΠΌΠ΅Π»ΠΈ Π² Π²ΠΈΠ΄Ρ ΠΏΠΎΠ΄ ΡΠ»ΠΎΠ²ΠΎΠΌ Β«gitΒ»,
Π·Π½Π°ΡΠΈΡ, Π΅Π³ΠΎ Π΅ΡΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ. ΠΠ»Ρ
ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ git Π² Π²Π°ΡΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅
ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΡΡΠΈΠΌ
ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
Git ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ,
ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΏΠΎΠΌΠ΅ΡΠΈΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π². ΠΡΠ»ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π²ΡΠ΅ ΡΡ ΠΆΠ΅
Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΠΌΠΈ, ΠΌΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ
ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»ΡΡΡ ΡΠ½ΠΈΠΌΠΊΠΈ Π² ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌ, Π΅ΡΠ»ΠΈ
Ρ Π½Π°Ρ Π½Π΅Ρ ΡΠΎΡΠΎΠ°Π»ΡΠ±ΠΎΠΌΠ°.
ΠΠΎΠ³Π΄Π° Π²Ρ Π³ΠΎΡΠΎΠ²Ρ Π½Π°ΡΠ°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ,
ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠ΅ΡΠ²ΡΡ
Π²Π°ΡΠΈΡ
ΡΠ°Π³ΠΎΠ² (ΠΏΠΎΡΠ»Π΅
ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° Π²
Π½Π΅Π΅) Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π·Π°ΠΏΡΡΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git init
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Git ΡΡΠ°Π·Ρ Π½Π°ΡΠ½Π΅Ρ
ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π»ΡΠ±ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅
Π²Ρ Π²Π½Π΅ΡΠ΅ΡΠ΅ Π² ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΡΠ»ΠΈ Π·Π°Π³Π»ΡΠ½ΡΡΡ
ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡ, ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ Π² ΠΏΠ°ΠΏΠΊΠ΅
ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²Π°Ρ ΡΠΊΡΡΡΠ°Ρ ΠΏΠ°ΠΏΠΊΠ°
.git
, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΠ΅
Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°Π³Π»ΡΠ΄ΡΠ²Π°ΡΡ
Π² ΡΡΡ ΠΏΠ°ΠΏΠΊΡ Π²Π°ΠΌ Π²ΡΡΠ΄ Π»ΠΈ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ, Π·Π°
ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅Π², ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°Ρ
ΠΎΡΠΈΡΠ΅
ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΡΠΎΠ½ΠΊΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ, ΡΠ°ΠΊ
ΡΡΠΎ ΠΏΠΎΠΊΠ° ΠΎΡΡΠ°Π²ΠΈΠΌ Π΅Π΅, ΠΊΠ°ΠΊ Π΅ΡΡΡ.
ΠΠ½Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡΠΎΠ΅ΠΊΡ
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Ρ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ Π΄Π΅Π»Π°ΡΡ
Π²ΡΠ΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠ΅. Π ΠΏΠ°ΠΏΠΊΠ΅ ΠΌΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°
(ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ
Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ) Π±ΡΠ΄Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ» Π²
ΡΠ°Π·ΠΌΠ΅ΡΠΊΠ΅ markdown β README.md. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΡΡΠΎ
ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ, ΡΡΠΎ Π»ΡΠ±ΠΎΠ΅
Π²Π½ΠΎΡΠΈΠΌΠΎΠ΅ ΠΌΠ½ΠΎΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅
ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΈΡ
-ΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ
Π΄Π΅ΡΡΡΠΊΠΎΠ² ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. Π’Π°ΠΊ Π²ΡΠ΅
Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π²Π½ΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git status
ΠΡΠΎ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ
β ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ, ΠΏΠΎ ΠΌΠ½Π΅Π½ΠΈΡ Git,
ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΡΠ΅ΠΉΡΠ°Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. Π’ΠΎ Π΅ΡΡΡ,
ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ½ Π·Π°ΠΌΠ΅ΡΠΈΠ», Π²ΡΠ΅ Π»ΠΈ
ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈ Ρ.Β ΠΏ.
Git Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ Ρ Π½Π°Ρ
ΠΎΠΆΡΡΡ Π² Π²Π΅ΡΠΊΠ΅
master (ΠΎ Π²Π΅ΡΠΊΠ°Ρ
Ρ Π½Π°ΠΏΠΈΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΡΠ°ΡΡΡ),
ΡΡΠΎ Ρ ΠΌΠ΅Π½Ρ ΠΏΠΎΠΊΠ° Π½Π΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½Π½ΡΡ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΈ ΡΠ΅ΠΉΡΠ°Ρ Π½Π΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅
ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ (ΡΠΎ Π΅ΡΡΡ, Git Π½Π΅
Π²ΠΈΠ΄ΠΈΡ Π² ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ, ΡΡΠΎ
ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ).
Π‘Π΅ΠΉΡΠ°Ρ Ρ Π΄ΠΎΠ±Π°Π²Π»Ρ ΠΌΠΎΠΉ ΡΠ°ΠΉΠ» README.md ΠΈ ΡΠ½ΠΎΠ²Π°
Π·Π°ΠΏΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git status:
ΠΠΎΠΌΠ°Π½Π΄Π° touch ΡΡΠΎ ΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π±ΡΡΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ».
Git ΡΠ²ΠΈΠ΄Π΅Π», ΡΡΠΎ Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Π²
ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ! ΠΡΡΡΠΎ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ
ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠΎΡΠΊΡ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ β Π½Π° Π²ΡΡΠΊΠΈΠΉ
ΡΠ»ΡΡΠ°ΠΉ, Π²Π΅Π΄Ρ Π±ΡΠ»ΠΎ Π±Ρ ΠΆΠ°Π»ΠΊΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ
ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±ΠΎΡΡ Π·Π°Π½ΠΎΠ²ΠΎ!
git add
ΠΠΎΠΌΠ°Π½Π΄Π° git add
ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΡΠ°ΠΉΠ»Ρ Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³.
ΠΡΠΎ ΠΊΠ°ΠΊ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠΊΠ° ΡΠ΄Π΅Π»Π°Π½Π½ΡΡ
ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΉ
ΠΏΠ΅ΡΠ΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΡ
Π² Π°Π»ΡΠ±ΠΎΠΌ. ΠΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅
Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½ΡΠΆΠ½ΠΎ Π²Π½Π΅ΡΡΠΈ
Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³. Π― ΡΠΊΠ°ΠΆΡ ΡΠ²ΠΎΠΉ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ».
git add README.md git status
ΠΡΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ git status, ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ
Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³Π΅ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» (ΡΠ΅ΠΏΠ΅ΡΡ
ΠΎΠ½ Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ°).
Π§ΡΠΎ ΠΆΠ΅ Ρ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΄Π΅Π»Π°Π», Π²ΡΠΏΠΎΠ»Π½ΠΈΠ²
ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add README.md
? Π― ΡΠΊΠ°Π·Π°Π» Git, ΡΡΠΎ Ρ
ΠΎΡΡ
Π²ΠΊΠ»ΡΡΠΈΡΡ Π² Π±ΡΠ΄ΡΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ,
Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΌΠ½ΠΎΠΉ Π² ΡΠ°ΠΉΠ» README.md ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠΎ Π²Π½ΠΎΡΠΈΡΡ ΡΠ°ΠΉΠ»Ρ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ,
ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΌΡ ΡΠ°ΡΡΠΎ
ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ
ΡΠ°ΠΉΠ»Π°ΠΌΠΈ. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ
ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠ», Ρ ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ
Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³ Π²ΡΠ΅
ΡΠ°ΠΉΠ»Ρ, Π² ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π― ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ
ΡΠ»Π°Π³ -Π:
git add -A
Π€Π»Π°Π³ -Π Π³ΠΎΠ²ΠΎΡΠΈΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³
Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° Π½Π΅ ΡΠ°Π· ΡΡΠΎΠ»ΠΊΠ½Π΅ΡΠ΅ΡΡ Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠ΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ git add .
Ρ ΡΠΎΠΉ ΠΆΠ΅ ΡΠ΅Π»ΡΡ (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΡΠ΅ΠΉΠ΄ΠΆΠΈΠ½Π³). ΠΡΠΎ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄, Π½ΠΎ ΡΡΠΎΠ±Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΡΡΠΎΠ½ΡΠ»Π° Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π΅ΠΏΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡΡ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° (ΡΠΎΡΠΊΠ° ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ). ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅ΡΠ»ΠΈ Π² ΠΊΠ°ΠΊΡΡ-ΡΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, Π° ΡΠ°ΠΉΠ» Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π²Π½Π΅ ΡΡΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² git add .
, Π²Ρ ΠΏΡΠΎΠΏΡΡΡΠΈΡΠ΅ ΡΡΠΎΡ ΡΠ°ΠΉΠ». Π ΠΊΠΎΠΌΠ°Π½Π΄Π° git add -A
ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈ Π½Π΅ Π²Π°ΠΆΠ½ΠΎ, Π² ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π²Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΠ΅ΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ.
git commit
ΠΠΎΠ³Π΄Π° Π²Ρ Π³ΠΎΡΠΎΠ²Ρ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΡΠ²ΠΎΠΈ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΡΡΠΎ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ
ΠΊΠΎΠΌΠ°Π½Π΄Ρ git commit
. ΠΠΎ Π²Ρ ΠΆΠ΅ Π½Π΅ Π·Π°Π±ΡΠ»ΠΈ, ΡΡΠΎ
Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°? ΠΡΠ»ΠΈ
Π²Ρ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ git commit
ΠΈ Π½Π°ΠΆΠΌΠ΅ΡΠ΅
Enter, Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Vi ΠΈΠ»ΠΈ Nano), Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅
Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π·Ρ,
Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠ»Π°Π³ -m
Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ
ΡΠ΅ΠΊΡΡΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΠΊΠ°Π²ΡΡΠΊΠ°Ρ
. ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎ
ΡΠ°ΠΊ:
git commit -m "Added some really important information to the README"
ΠΡΠ»ΠΈ Π΄ΠΎ ΡΠΈΡ
ΠΏΠΎΡ Π²ΡΠ΅ Π±ΡΠ»ΠΎ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅, ΡΠΎ
ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠΎΡ
ΡΠ°Π½ΠΈΠ»ΠΈ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Π²
Git! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠΎΡΠΊΠ°, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ
Π²ΡΠ΅Π³Π΄Π° ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π΅ΡΠ½ΡΡΡΡΡ, Π΅ΡΠ»ΠΈ Π²
Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΡΡΠΎ-ΡΠΎ ΠΏΠΎΠΉΠ΄Π΅Ρ Π½Π΅ ΡΠ°ΠΊ.
ΠΠ°Π²Π°ΠΉΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π· ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π²Π΅ΡΡ ΡΡΠΎΡ
ΠΏΡΠΎΡΠ΅ΡΡ Π² Π³ΠΈΡΠΊΠ΅:
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π² Π³ΠΈΡΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ git
, Π½ΠΎ ΠΌΠ½Π΅ ΡΡΠΎΠΈΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
addgit add -A
Π΄Π»Ρ
Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ. ΠΡ, ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠΎΠ»ΡΡΡΠ΅, ΡΠ΅ΠΌ Ρ ΠΌΠ΅Π½Ρ!
git log
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΡΠ²ΠΎΠΈΡ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π·Π°ΠΏΡΡΡΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ git log
. Π§ΡΠΎΠ±Ρ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎ Π»ΠΎΠ³Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
ΡΡΡΠ΅Π»ΠΊΠΈ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ΅. Π Π»ΠΎΠ³Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅
Π²ΠΈΠ΄Π΅ΡΡ Π΄Π°ΡΡ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π°
ΡΠ°ΠΊΠΆΠ΅ Π°Π²ΡΠΎΡΠΎΠ² (Π»ΡΠ΄Π΅ΠΉ, ΡΠ΄Π΅Π»Π°Π²ΡΠΈΡ
ΠΊΠΎΠΌΠΌΠΈΡ).
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠΌΠ΅Π΅Ρ Ρ
ΡΡ β Π΄Π»ΠΈΠ½Π½ΡΠΉ
ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ID, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ
ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ.
ΠΡΡΠ΅ΡΠ΅ΡΡΠ²ΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
Β«ΠΡ Π²ΡΠ΅ Π²ΡΠ΅ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΡΠ΅, ΡΡΠΎ Git ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ Π²ΠΏΠ΅ΡΠ΅Π΄-Π½Π°Π·Π°Π΄ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ?Β»
git checkout
Π’Π΅ΡΠΌΠΈΠ½ checkout ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ
Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π½Π° Π΄ΡΡΠ³ΠΎΠΉ. ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ
ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ID (Ρ
ΡΡ)?
Π― ΠΌΠΎΠ³Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠ²ΠΎΡ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²,
Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡΠΈΡ
ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ
Ρ
ΡΡΠ΅ΠΉ
ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git checkout
.
ΠΡΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Ρ Ρ
ΠΎΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ,
ΠΈΠΌΠ΅Π΅Ρ Ρ
ΡΡ Π°2 (Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Ρ
ΡΡΠΈ Π³ΠΎΡΠ°Π·Π΄ΠΎ
Π΄Π»ΠΈΠ½Π½Π΅Π΅, ΡΡΠΎ ΡΠΊΠΎΡΠ΅Π΅ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅
0c9b8f7c23dea4cf0a0285f14211124b6d5891e9), Ρ ΠΌΠΎΠ³Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ
ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git checkout a2
Π ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΡ ΠΌΠΎΡ ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ Π±Π°Π·Π°
ΠΎΡΠΊΠ°ΡΡΠ²Π°Π΅ΡΡΡ Π½Π°Π·Π°Π΄ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ Π²ΡΠ΅ Π²
Π½Π΅ΠΉ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ, ΠΊΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΡΠ°Π·Ρ
ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ³Π°ΡΡ,
ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΊΠ°ΠΆΠ΅ΡΡΡ, Π±ΡΠ΄ΡΠΎ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΡΡΡΠ°ΡΠ΅Π½Ρ, Π½ΠΎ Π½Π΅
Π²ΠΎΠ»Π½ΡΠΉΡΠ΅ΡΡ! ΠΠ½ΠΈ Π²ΡΠ΅ ΡΠΎΡ
ΡΠ°Π½Π΅Π½Ρ ΠΈ ΠΆΠ΄ΡΡ
Π²Π°Ρβ¦ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ!
ΠΠΎΡ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π² Π³ΠΈΡΠΊΠ΅:
ΠΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΡΡΠ΅ΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π½ΡΡΡΠΈ Π½Π΅Π³ΠΎ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠΎΡ ΡΠ°Π½Π½ΠΎΡΡΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΊ Π½Π΅ΠΌΡ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout a3 ΠΈΠ»ΠΈ (Π±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ) git checkout master.
Π’Π΅ΠΏΠ΅ΡΡ, Π²Π΅ΡΠ½ΡΠ²ΡΠΈΡΡ Π² ΠΏΡΠΎΡΠ»ΠΎΠ΅, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅
ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ Git. Π§ΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ:
Note: checking out 'a2'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b HEAD is now at a2 Another Message
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²Ρ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΠ΅ΡΡ
Π² Π²Π΅ΡΠΊΠ΅ master. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π½ΠΎΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ
ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ Π΄Π°ΠΆΠ΅
ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ, ΠΈ Π²ΡΠ΅ ΡΡΠΎ Π½Π΅
Π·Π°ΡΡΠΎΠ½Π΅Ρ ΠΊΠΎΠ΄ Π² Π²Π΅ΡΠΊΠ΅ master (Π² Π³ΠΈΡΠΊΠ΅ ΡΡΠΎ
ΠΊΠΎΠΌΠΌΠΈΡ Ρ Ρ
ΡΡΠ΅ΠΌ Π°3).
ΠΠ΅ΡΠΊΠΈ ΠΌΡ ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ.
ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Ρ Π»ΠΈΡΡ Ρ
ΠΎΡΠ΅Π»
ΠΏΠΎΠΊΠ°Π·Π°ΡΡ, Π½Π° ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ±Π΅Π½ Git, ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ
ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π²Π΅ΡΡΠΈΠΉ
Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΡΡΠΈΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄
Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Git, Π½ΠΎ Π±Π΅Π· ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ ΠΎΠ½ Π½Π°Π²ΡΠ΅Π³Π΄Π° ΠΎΡΡΠ°Π½Π΅ΡΡΡ Π΄Π»Ρ
Π²Π°Ρ ΡΠ΅ΡΠ½ΡΠΌ ΡΡΠΈΠΊΠΎΠΌ.
ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅
ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΡΡΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ΅ ΠΈ
ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π½ΠΈΠΌ ΠΏΠΎΠ±Π»ΠΈΠΆΠ΅, Π»ΡΡΡΠΈΠΉ
ΡΠΏΠΎΡΠΎΠ± ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ β ΠΏΠΎΠΈΠ³ΡΠ°ΡΡΡΡ ΠΈ
ΠΏΠΎΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ. Π― Π²ΡΠ΅Π³Π΄Π° Π³ΠΎΠ²ΠΎΡΡ
ΡΠ²ΠΎΠΈΠΌ ΡΡΡΠ΄Π΅Π½ΡΠ°ΠΌ, ΡΡΠΎ Π»ΡΡΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ±
ΠΈΠ·ΡΡΠΈΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ β ΠΈΠ΄ΡΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΠΏΡΡΠ΅ΠΌ.
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΡΠ°Π²Π»ΡΡΡ
ΡΠ΅Π±Ρ Π΄Π΅Π»Π°ΡΡ Π½Π΅ΡΡΠΎ Π±ΠΎΠ»ΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎ
ΡΠΈΡΠ°ΡΡ ΡΡΠ°ΡΡΠΈ Π² Π½Π°Π΄Π΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌΡ-ΡΠΎ Π½Π°ΡΡΠΈΡΡΡΡ.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΏΡΡΡΠΎΠΉ
ΠΏΠ°ΠΏΠΊΠ΅, Π½Π°ΡΠ½ΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΠ΄Π° ΡΠ°ΠΉΠ»Ρ,
ΠΏΠΎΡΠ°ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ git status ΠΈ git log, ΡΡΠΎΠ±Ρ
ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ Π²ΡΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ.
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π΅ΡΠ΅ ΠΊΡΠΈΠ²ΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Git, Π²Π°ΠΌ Π±ΡΠ΄Π΅Ρ Π΄Π°ΠΆΠ΅ ΡΡΡΠ°Π½Π½ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΡΠ°Π½ΡΡΠ΅ ΠΌΠΎΠ³Π»ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡΡΡΡ!
Π‘ ΡΠ΅Π³ΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ git
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠ° Π΄Π½ΡΡ Ρ ΠΏΠΎΠ»ΡΡΠΈΠ» ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ°.ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, Ρ ΠΎΡΠΊΡΡΠ» ΠΊΠΎΠ½ΡΠΎΠ»Ρ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π²Π΅ΡΠΊΠΈ ΠΈ Π²ΡΠ΅ Π»ΠΈ ΠΏΡΠ°Π²ΠΊΠΈ Π·Π°ΠΊΠΎΠΌΠΈΡΠ΅Π½Ρ (ΠΎΡ ΡΠ»ΠΎΠ²Π° commit — ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ). ΠΠ΄Π½Π°ΠΊΠΎ Π½ΠΈΡΠ΅Π³ΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ Ρ Π½Π΅ ΡΠ·Π½Π°Π» β ΠΏΡΠΎΠ΅ΠΊΡ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π» .git ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.ΠΡΠ° ΡΠΈΡΡΠ°ΡΠΈΡ Π² ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΡΠ°Π· Π·Π°ΡΡΠ°Π²ΠΈΠ»Π° Π·Π°Π΄ΡΠΌΠ°ΡΡΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. Π ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈ Π²ΠΎΠ²ΡΠ΅ Π½Π΅ Π·Π½Π°ΡΡ ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅, ΠΈ ΠΊΠ°ΠΊ ΡΡΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ.
ΠΠΎΡΠ΅ΠΌΡ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°:
- ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ
- Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π±ΡΡΡΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΠΈ ΠΎΡΠΊΠ°ΡΠΈΡΡ, Π²ΡΠ΅ Π½Π΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
- Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π±ΡΡΡΡΠΎ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΎΡΠΈΠ±ΠΎΡΠ½ΡΠ΅, ΡΠΆΠ΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
- ΠΈΡΡΠΎΡΠΈΡ Π²ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅, Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π΄Π°ΡΡ ΠΈ Π°Π²ΡΠΎΡΠΎΠ²
- Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ·ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ git
git β ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ².Β«Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°ΡΒ» Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΈ ΠΈΠ· Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ ΠΈ ΠΏΠΎΠ½ΡΡΠΈΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Git
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉΒ β Π΄Π΅ΡΠ΅Π²ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ°.ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ Π²Π΅ΡΠΊΡ β master. ΠΠ΅ΡΠΊΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΡ Π² Ρ ΡΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.Β ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π² Π²Π΅ΡΠΊΠ΅ master Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΠ΅ΡΠΊΠ°Β β ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ.Β Β ΠΠ° ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠΎΠΊ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΡΡΠΎ ΡΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ΅ΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² Π½Π΅ΠΉ Π½ΠΎΠ²ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ. ΠΠΎ ΠΌΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² β Π²Π΅ΡΠΊΠΈ Π±ΡΠ΄ΡΡ ΡΠ°ΡΡ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ°Π·Π½ΡΠ΅ ΡΡΠΎΡΠΎΠ½Ρ.
ΠΠΎΠΌΠΌΠΈΡΒ (ΠΎΡ ΡΠ»ΠΎΠ²Π° commit — ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ) β Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠ°Ρ Π΅Π΄ΠΈΠ½ΠΈΡΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΠΈΡΡΠΎΡΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ID ΠΈ ΡΠ΅ΠΏΠΎΡΠΊΡ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠΎΠΆΠ½ΠΎ Β«ΠΎΡΠΊΠ°ΡΠΈΡΡΒ» (ΠΎΡΠΌΠ΅Π½ΠΈΡΡ) ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠ»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈΠ· ΠΈΡΡΠΎΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΡΠΎ Π΅ΡΡΡ Π²Π΅ΡΠΊΡ.Β
ΠΠ½Π΄Π΅ΠΊΡΒ β ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅.ΠΡΠΈ ΡΡΠΎΠΌ, Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠ΅ Π² ΠΈΠ½Π΄Π΅ΠΊΡ β ΠΎΠ½ΠΈ Π½Π΅ Π±ΡΠ΄ΡΡ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠ΅Π½Ρ. ΠΡ Π½Π°Π΄ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π²Π½ΠΎΡΠΈΡΡ ΡΠ°Π·ΠΎΠΌ, Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠ°Π±ΠΎΡΡ, ΠΏΡΠ°Π²ΠΊΠΈ ΠΈ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ.
Π ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡ :
- init β ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
- status β ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ , Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²
- branch β ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²Π΅ΡΠΎΠΊ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΡΡ ΡΡΠ΅Π΄ΠΈ Π½ΠΈΡ
- add β Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡ
- reset β ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°
- commit β ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Π½ΡΠ΅ Π² ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
- checkout β ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅Ρ Π°ΠΊΡΠΈΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ; ΠΎΡΠΌΠ΅Π½ΡΠ΅Ρ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠ΅ Π² ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
- merge β ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²Π΅ΡΠΊΡ Ρ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ
- log β Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² (ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈ ΡΠΎΡΠΌΠ°Ρ)
ΠΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Git
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ ΠΏΠ°ΠΏΠΊΡ Π΄Π»Ρ ΡΠ΅ΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.Β
Π§ΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Π³ΠΈΡΠΎΠΌ, Π½Π°Π΄ΠΎ Π΅Π³ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ β ΠΎΡΠΊΡΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ, ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΠΊΠΎΡΠ½Π΅Π²ΡΡ ΠΏΠ°ΠΏΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
$ git init
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΏΠ°ΠΏΠΊΠ° .git Ρ ΠΊΠ°ΠΊΠΈΠΌΠΈ-ΡΠΎ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ.Β ΠΡΠΈΡΠ΅ΠΌ ΡΠ°ΠΊΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΌΠ΅Π½ΡΡΡ β Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉΒ». Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ Π΅ΡΠ΅ Β«Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠΎΠΏΠΈΠΈΒ» ΠΈΠ»ΠΈ bare-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
ΠΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΠΈΠ»ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ .
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
$ git status
Π ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ:
$ git add file_name_a.php
Π€Π°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΠ±Π΅Π». ΠΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΠΈ Π΅Π΅ ΠΏΠΎΠ΄ΠΏΠ°ΠΊΠ°Ρ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git add .
ΠΡΠ΄ΡΡΠ΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½Ρ, ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠΎΠ±Π°Π²ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅. ΠΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°Π² ΠΈΠΌΡ.
ΠΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git add -A
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΈΡ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ, ΡΠΎ Π΅ΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ°ΠΉΠ»Ρ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ.
ΠΡΠ»ΠΈ Π²Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ» ΠΈΠ· Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°, ΡΠ΄Π°Π»ΠΈΡΠ΅ Π΅Π³ΠΎ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git reset file_name_b.php
ΠΠ°ΡΠΈΠΊΡΠΈΡΡΠΉΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅. Π’Π°ΠΊ Π±ΡΠ΄Π΅Ρ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΏΡΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΎΡΠΌΠ΅Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Π½Π΅ ΡΠΎΡ ΡΠ°ΠΉΠ» — Π²Π΅ΡΠ½ΠΈΡΠ΅ Π΅Π³ΠΎ ΠΊ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌΡ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git checkout file_name_c.php
ΠΡΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ , ΡΠ°Π½Π΅Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ , ΡΠ°ΠΉΠ»Π°Ρ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΏΠ°ΠΏΠΊΠ°Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git checkout -- .
ΠΠ΅Π½ΡΠΆΠ½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π°Π»ΠΈΡΡ. ΠΠ»ΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git reset --hard HEAD
ΠΡΠΎΠ΅ΠΊΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΊ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌΡ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ.
$ git commit
ΠΡΠΊΡΠΎΠ΅ΡΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ. Π Π°ΡΠΏΠΈΡΠΈΡΠ΅, ΡΡΠΎ ΠΈ Π·Π°ΡΠ΅ΠΌ Π²Ρ ΠΌΠ΅Π½ΡΠ»ΠΈ. ΠΠΎ Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠΉΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² β Π³ΠΈΡ ΡΠ΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ Π·Π° Π²Π°Ρ. ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
fix| order price
now price includes vat
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π»ΡΡΡΠ΅ ΠΏΠΈΡΠ°ΡΡ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅, Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΏΠΎΡΠΎΠΌΡ, ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ ΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΊΡΠ°ΠΊΠΎΠ·ΡΠ±Π»ΠΈΠΊΠΈ.
ΠΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠ°ΠΌΠ°Ρ Π²Π°ΠΆΠ½Π°Ρ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ»ΠΎΠ²Π°Ρ . ΠΠ°Π»ΡΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π΅ ΠΆΠ°Π»Π΅ΡΡ ΡΡΡΠΎΠΊ ΠΈ ΡΠ°ΡΠΏΠΈΡΠ°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΡΠΎ, Π·Π°ΡΠ΅ΠΌ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ Π±ΡΠ»ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ (ΡΠ΅ΡΡ ΠΏΡΠΎ Π»ΠΎΠ³ΠΈΠΊΡ, Π° Π½Π΅ ΠΏΡΠΎ ΡΠ°ΠΉΠ»Ρ).
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π²Π°Ρ ΠΊΠΎΠΌΠΌΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π² Π½Π΅ΠΉ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡΡ:
$ git log
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, Π½ΠΈΡΠ΅Π³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ.
ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΡΡΠΎ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Π²ΡΠ΅, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π³ΠΈΡ, Π½ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΠ½Π΅ Π½Π΅ Ρ Π²Π°ΡΠ°Π»ΠΎ Π² ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ Ρ ΠΌΠ΅ΡΠΊΠΎΠΉ [git]
Git — ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΡ ΠΌΠ΅ΡΠΊΡ Π΄Π»Ρ Π²ΠΎΠΏΡΠΎΡΠΎΠ² ΠΎ git. ΠΠΎΠΏΡΠΎΡΡ, ΠΊΠ°ΡΠ°ΡΡΠΈΠ΅ΡΡ ΠΊΠ°ΠΊΠΈΡ
-ΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠ°ΠΉΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΌΠ΅ΡΠΊΠ°ΠΌΠΈ (git-pull, git-push, git-merge ΠΈ Ρ.ΠΏ.).
regex ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ Π²ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ git ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΡΡΡ git ΠΏΡΠΎΠ΅ΠΊΡ, Π² Π½Π΅ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π²ΡΠ΅ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π² Π½Π΅ΠΌ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ. ΠΠΎΠΈΡΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠ΅ΠΉΡΠ°Ρ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ:
ΠΠΎΠ»ΡΡΠ°Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π² …
Π·Π°Π΄Π°Π½ 1 ΡΠ°Ρ Π½Π°Π·Π°Π΄
Π Π°Π±ΠΎΡΠ° Ρ GitLab
ΠΠ΅ ΡΠ°Π±ΠΎΡΠ°Π» Ρ GitLab Π΅ΡΠ΅ ΠΏΠΎΠΊΠ°, Π½ΠΎ Π΅ΡΡΡ Π·Π°Π΄Π°ΡΠ°, ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π΅ ΠΌΠΎΠ³Ρ ΠΏΠΎΠ½ΡΡΡ (ΠΌΠ°Π½ΡΠ°Π»Ρ ΡΠΈΡΠ°Π»). Π‘ΠΌΡΡΠ» Π·Π°Π΄Π°ΡΠΈ — Π·Π°Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² GitLab.
ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Ρ.ΠΊ. Ρ ΠΌΠ΅Π½Ρ …
Π·Π°Π΄Π°Π½ Π²ΡΠ΅ΡΠ°
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π΅ΠΊΠ°ΠΏΠΎΠ² ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΈ ΠΌΠ΅ΡΠΆΠ΅
ΠΡΡΡ ΡΠ°ΠΊΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, ΡΡΠΎ ΠΏΡΠΈ ΠΌΠ΅ΡΠΆΠ΅ Π΄Π²ΡΡ
Π²Π΅ΡΠΎΠΊ Ρ ΠΌΠ΅Π½Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ»ΠΈΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΡΠ΅ΡΠ°Ρ Π²ΡΡΡΠ½ΡΡ. Π Π±ΡΠ²Π°Π΅Ρ ΡΠ°ΠΊΠΎΠΉ ΡΠ»ΡΡΠ°ΠΉ, ΡΡΠΎ Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΠ» ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΈΠ· ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Π² ΠΊΠ°ΠΊΠΎΠΌ-ΡΠΎ ΡΠ°ΠΉΠ»Π΅ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ. …
Π·Π°Π΄Π°Π½ 2 Π΄Π½Ρ Π½Π°Π·Π°Π΄
Minebot
66211 Π·ΠΎΠ»ΠΎΡΠΎΠΉ Π·Π½Π°ΠΊ55 ΡΠ΅ΡΠ΅Π±ΡΡΠ½ΡΡ
Π·Π½Π°ΠΊΠΎΠ²1515 Π±ΡΠΎΠ½Π·ΠΎΠ²ΡΡ
Π·Π½Π°ΠΊΠΎΠ²
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΡΠΌΠ΅ΡΠ΄ΠΆΠ΅Π½Ρ ΠΌΠ΅ΡΠ΄ΠΆ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΄ΠΆ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΡΠΌΠ΅ΡΠ΄ΠΆΠ΅Π½Ρ Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π±ΡΠ°Π½ΡΠ°?
ΠΠ° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅ Π·Π΅Π»Π΅Π½Π°Ρ Π²Π΅ΡΠΊΠ° ΡΡΠ° master, Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ SHA ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ 1 Π½ΠΎ Π½Π΅Ρ Π½Π°Π·Π²Π°Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΊΠΎΡΠΎΡΡΡ Π²Π»ΠΈΠ²Π°Π»ΠΈ Π° …
Π·Π°Π΄Π°Π½ 16 ΠΌΠ°Ρ Π² 7:52
J Mas
1,94455 Π·ΠΎΠ»ΠΎΡΡΡ
Π·Π½Π°ΠΊΠΎΠ²2121 ΡΠ΅ΡΠ΅Π±ΡΡΠ½ΡΠΉ Π·Π½Π°ΠΊ5454 Π±ΡΠΎΠ½Π·ΠΎΠ²ΡΡ
Π·Π½Π°ΠΊΠ°
Command failed: heroku login
ΠΠ°ΡΠ°Π» ΠΈΠ·ΡΡΠ°ΡΡ Django. ΠΠΎ ΡΡΡΠ»ΠΊΠ΅ Π³Π»Π°Π²Π° Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°ΡΡΡΡΠ»: https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/Deployment.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ‘heroku create’ …
Π·Π°Π΄Π°Π½ 13 ΠΌΠ°Ρ Π² 7:13
Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ubuntu Π½Π° virtualBox
Ρ Π½Π΅Π΄Π°Π²Π½Π΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ ubuntu. ΠΠΎΠ΄ΠΎΠ·ΡΠ΅Π²Π°Ρ, ΡΡΠΎ ΡΡΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» git ΠΈ docker. ΠΡΠΌΠ°Ρ ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² Π½ΡΠΌ. Π’Π°ΠΊΠΆΠ΅ ΡΠΊΠ°ΡΠΈΠ²Π°Π» Ρ [https://docs.microsoft.com/ru-ru/windows/wsl/…
Π·Π°Π΄Π°Π½ 9 ΠΌΠ°Ρ Π² 14:28
brenin
111 Π±ΡΠΎΠ½Π·ΠΎΠ²ΡΠΉ Π·Π½Π°ΠΊ
Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ npm i ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΠΎΡΠ° ssh
ΠΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ npm i Π² react-native ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ°
Ilya Shevtsov@DESKTOP-86UQNMD MINGW64 /c/androidprojects/ProjectApp/StudyDesk (master)
$ npm i
npm ERR! code 129
npm ERR! command …
Π·Π°Π΄Π°Π½ 5 ΠΌΠ°Ρ Π² 15:52
ΠΡΠΌΠ΅Π½Π° git rebase -i
ΠΡΠ»ΠΎ Ρ ΠΌΠ΅Π½Ρ 2 ΠΊΠΎΠΌΠΈΡΠ° «ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ» ΠΈ «Π‘ΠΌΠ΅Π½ΠΈΠ» ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π² ReleaseNotes»,
ΡΠ΅ΡΠΈΠ» ΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ. ΠΠ½ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΠ»ΠΈΡΡ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ «ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ». ΠΠΎ Π² …
Π·Π°Π΄Π°Π½ 5 ΠΌΠ°Ρ Π² 15:52
ΠΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ git ΡΠΎ Π²ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠ΅ΠΉ Π² Intelij Idea
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΌΠΎΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π·Π°Π»ΠΈΠ»Π° ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π³ΠΈΡΠ° Π² ΠΈΠ½ΡΠ΅Π»ΠΈΠΆ Π°ΠΉΠ΄ΠΈΠ° ΠΈ ΠΈΡΡΠΎΡΠΈΡ ΡΡΠΎΠ±Ρ Π·Π°Π½ΠΎΠ²ΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ Π·Π°Π»ΠΈΡΡ? ΠΡΠ»ΠΈ Π΄Π° ΡΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ?
Π·Π°Π΄Π°Π½ 4 ΠΌΠ°Ρ Π² 16:50
ΠΠ½ΠΎΡ
5977 Π±ΡΠΎΠ½Π·ΠΎΠ²ΡΡ
Π·Π½Π°ΠΊΠΎΠ²
etckeeper ΠΈ ΡΠ°Π·Π³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ°
Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ etckeeper Π½Π° Π΄Π΅ΡΡΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ
Ρ Centos 6 ΠΈ Centos 7.
ΠΠ½ Π²ΡΠ³ΡΡΠΆΠ°Π΅Ρ /etc Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Π² ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠΉ Π³ΠΈΡ-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ (Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΎΠ½ ΡΠ²ΠΎΠΉ). ΠΠΎΠΉ Π³ΠΈΡ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ …
Π·Π°Π΄Π°Π½ 4 ΠΌΠ°Ρ Π² 9:51
Git — ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°
SourceTree
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitHub Desktop
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: MIT
TortoiseGit
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΡ Git
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
GitKraken
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ / 29 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π‘Π¨Π / 49 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π‘Π¨Π.
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
Magit
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
SmartGit
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: 79 $ / ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ / ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π΄Π»Ρ Π½Π΅ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
ΠΠ°ΡΠ½Ρ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac, Windows
Π¦Π΅Π½Π°: 79 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π‘Π¨Π Π·Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (30-Π΄Π½Π΅Π²Π½Π°Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π½Π°Ρ Π²Π΅ΡΡΠΈΡ)
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitUp
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
GitEye
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
ΠΌΠ΅ΡΠ·Π°Π²Π΅Ρ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
ΡΠ½Π³ΠΈΡ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: MIT
ΠΌΠ΅ΡΠ·Π°Π²Π΅Ρ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Cycligent Git
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
Ρ
ΠΈΡ
ΠΈΠΊΠ°ΡΡ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
Gitbox
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac
Π¦Π΅Π½Π°: 14 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ².99
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
Aurees
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
ΠΠΈΠ»ΠΊΠ°
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac, Windows
Π¦Π΅Π½Π°: 49 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ².99, Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΎΡΠ΅Π½ΠΊΠ°
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
Π Π°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: iOS
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Ρ ΠΏΠΎΠΊΡΠΏΠΊΠ°ΠΌΠΈ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
CodeReview
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
ΠΌΠ°ΡΡΠ΅Ρ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠ° / ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π΄Π»Ρ Π½Π΅ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
Git2Go
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: iOS
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Ρ ΠΏΠΎΠΊΡΠΏΠΊΠ°ΠΌΠΈ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitAhead
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: MIT
ΠΠ°ΡΠΌΠ°Π½Π½ΡΠΉ Git
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Android
Π¦Π΅Π½Π°: 1.99 β¬
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitDrive
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: iOS
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Ρ ΠΏΠΎΠΊΡΠΏΠΊΠ°ΠΌΠΈ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitX-dev
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
GitBlade
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ Lite, 59 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ².99 Π½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² Π³ΠΎΠ΄ Π΄Π»Ρ Π²Π΅ΡΡΠΈΠΈ PRO
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
ΠΠΈΡΠ°ΡΠ°
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: GNU GPL
RepoZ
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: MIT
ΠΠΎΠ½Π³
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
ΠΠΎΠ·Π²ΡΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: 99 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π‘Π¨Π Π·Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π³ΠΎΠ΄ΠΎΠ²Π°Ρ Π±ΠΈΠ·Π½Π΅Ρ-ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠ° 75 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π‘Π¨Π, Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π½Π°Ρ Π²Π΅ΡΡΠΈΡ.
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
LazyGit
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: MIT
SnailGit
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac
Π¦Π΅Π½Π°: 9 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ².99 / Lite Π²Π΅ΡΡΠΈΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitAtomic
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Windows
Π¦Π΅Π½Π°: 15.00 β¬
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
Gitfox
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac
Π¦Π΅Π½Π°: β¬ 3.99 / ΠΌΠ΅Ρ. ΠΠ»ΠΈ 24,99 β¬ / Π³ΠΎΠ΄ Π½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitFiend
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
NitroGit
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Windows
Π¦Π΅Π½Π°: 20 β¬ / ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ / ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π΄Π»Ρ Π½Π΅ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitFinder
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Mac
Π¦Π΅Π½Π°: 24 Π΄ΠΎΠ»Π»Π°ΡΠ°.95
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
ΠΠ΅ΡΡΠ΄
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π΄Π»Ρ Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ — 37 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ².
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitUI
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: Linux, Mac, Windows
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ, Π½ΠΎ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ.
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: MIT
PolyGit
ΠΠ»Π°ΡΡΠΎΡΠΌΡ: iOS
Π¦Π΅Π½Π°: ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Ρ ΠΏΠΎΠΊΡΠΏΠΊΠ°ΠΌΠΈ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ
GitHub Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄ Β· Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΊΠ°ΠΊ Π»ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° ΠΏΠ»Π°Π½Π΅ΡΠ΅ Β· GitHub
GitHub Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄ Β· Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΊΠ°ΠΊ Π»ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° ΠΏΠ»Π°Π½Π΅ΡΠ΅ Β· GitHub
GitHub Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ CI / CD, Dependabot ΠΈ ΠΊΡΡΠΏΠ½Π΅ΠΉΡΠ΅ΠΌΡ Π² ΠΌΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² GitHub Π΄Π°Π΅Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π»ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
Π‘ΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ
Π£ΠΏΡΠ°Π²Π»ΡΠΉΡΠ΅ Π²ΡΠ΅ΠΌ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΡΠ²ΠΎΠΈ Π»ΡΠ±ΠΈΠΌΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠΏΠΎΡΠΎΠ±, ΠΊΠΎΡΠΎΡΡΠΉ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π²Π°Ρ, Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π²ΡΠ΅Ρ Π²Π°ΡΠΈΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΉ, Π²ΠΊΠ»ΡΡΠ°Ρ Slack, Jira ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ²ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ΅Π»ΡΠΊΠΎΠΌ ΠΌΡΡΠΈ
ΠΠ΅Π³ΠΊΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠΉΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π»ΠΈ Π²Ρ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΈΠ· Π΄Π²ΡΡ ΠΈΠ»ΠΈ Π΄Π²ΡΡ ΡΡΡΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ.
Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΊΠΎΠ΄Π°
ΠΠΎΠ²ΡΡΡΡΠ΅ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² Π²Π°Ρ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ.
ΠΠ»Π°Π½ΠΈΡΡΠΉΡΠ΅ Π²ΠΌΠ΅ΡΡΠ΅
Π£ΠΏΡΠΎΡΡΠΈΡΠ΅ Π΄Π»Ρ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΈΡ, ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΡ ΡΠ°Π±ΠΎΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΎΡΡΠ°Π²Π°Π»ΠΈΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π³ΡΠ°ΡΠΈΠΊΠΎΠΌ.
Β«ΠΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΌΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ²Π΅ΡΠ΅Π½Ρ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π² Π³Π°ΡΠΌΠΎΠ½ΠΈΠΈ. ΠΡ Π²ΡΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅ΡΡ Π½Π°ΡΡ ΡΠ°Π±ΠΎΡΡ, ΠΎΡΠ·ΡΠ²Ρ ΠΈ ΠΏΠ»Π°Π½ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΠ΅ΡΠ΅Π· GitHub Β».
ΠΠΈ ΠΠ΄ΠΊΠΈΠ½Ρ, ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΎΡΠ΄Π΅Π»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠΈΠΊ Π΄Π΅Π½Π΅Π³
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ
Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ CI / CD, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π²Π°Ρ
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠΉΡΠ΅ ΡΠ²ΠΎΠΉ CI / CD
Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅, ΡΠ΅ΡΡΠΈΡΡΠΉΡΠ΅ ΠΈ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΠ‘, ΡΠ·ΡΠΊΠ΅ ΠΈΠ»ΠΈ ΠΎΠ±Π»Π°ΠΊΠ΅.
ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΈΠ· ΡΡΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ
ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ GitHub Actions Π½Π° GitHub Marketplace ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅.
ΠΡΠ²Π΅ΡΠΈΡΡ Π½Π° ΡΠΎΠ±ΡΡΠΈΡ GitHub
Π’ΡΠΈΠ³Π³Π΅ΡΠ½ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΠ±ΡΡΠΈΠΉ GitHub, Π²ΠΊΠ»ΡΡΠ°Ρ push, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ, Π½ΠΎΠ²ΡΠ΅ Π²ΡΠΏΡΡΠΊΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ
Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅, Π΄Π΅Π»ΠΈΡΠ΅ΡΡ, ΡΠ»ΡΡΡΠ°ΠΉΡΠ΅ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΊΠΎΠ΄.
ΠΠ·ΡΡΠΈΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ GitHub
Β«Π‘ GitHub Actions ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π° 75 ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ² Π±ΡΡΡΡΠ΅Π΅ — ΡΡΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 10 ΠΌΠΈΠ½ΡΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ 40 ΠΌΠΈΠ½ΡΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΈΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡ Π²ΡΡΡΠ½ΡΡ.β
ΠΡΠ΅Ρ ΠΠΎΡΠ°ΠΊ, ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ
ΠΠ΅ΡΠ΅Π΄Π½Π΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΠΎΠΌ ΠΌΠΈΡΠΎΠ²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ
ΠΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ ΡΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΡΠ°ΠΌ, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΡΠΆΠ΅ Π΅ΡΡΡ. GitHub ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΠΎΠΌΠΎΠΌ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ 40 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΠΊΡΡΠΏΠ½Π΅ΠΉΡΠ΅Π³ΠΎ Π² ΠΌΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΠ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.
ΠΠΎΡΠΎΠ²Ρ Π½Π°ΡΠ°ΡΡ ΡΠ²ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
?
ΠΠΎΠΌΠ°Π½Π΄Π° GitHub
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈ
ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄
ΠΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ.ΠΡ Π²ΠΎΡΠ»ΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΡ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΠΊΠ½ΠΎΠΌ. ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅Π°Π½Ρ.
ΠΡ Π²ΡΡΠ»ΠΈ ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΠΈΠ»ΠΈ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΎΠΊΠ½Π΅. ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅Π°Π½Ρ.
Enterprise Β· ΠΠΎΠ»Π΅Π΅ ΡΠ°Π·ΡΠΌΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Β· GitHub
Enterprise Β· ΠΠΎΠ»Π΅Π΅ ΡΠ°Π·ΡΠΌΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Β· GitHub
GitHub Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ
Π£Π²Π΅Π»ΠΈΡΡΡΠ΅ ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΡΠ²ΠΈΡΠ΅Π»Ρ.
ΠΠ°ΡΠΈΡΠ°ΠΉΡΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π³.
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ.
ΠΠΎΠ²ΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²Π°.
ΠΠ°ΠΌ Π΄ΠΎΠ²Π΅ΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ 50 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Π‘Π²ΡΠ·Π°ΡΡΡΡ Ρ ΠΎΡΠ΄Π΅Π»ΠΎΠΌ ΠΏΡΠΎΠ΄Π°ΠΆ
ΠΠ°ΡΠ°ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΏΡΠΎΠ±Π½ΡΡ Π²Π΅ΡΡΠΈΡ
Π Π°ΡΡΠΈΡΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠΉΡΠ΅ ΡΠ²ΠΎΠΉ Π±ΠΈΠ·Π½Π΅Ρ.
DevOps — ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠ°Π»ΠΎ. ΠΠ΅Π΄ΡΡΠΈΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠ°ΠΊΠΆΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΡΠ°Π»Π°Π½ΡΠΎΠ², ΠΊΡΠ»ΡΡΡΡΡ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ².GitHub ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡΠΌ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ Π²ΡΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ
ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ Π½ΡΠΆΠ½ΡΡ Π²Π°ΠΌ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠ², Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΡΡΠ°Π²ΡΡΠ΅ ΠΈΡ ΡΡΠ²ΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ΅Π±Ρ ΠΊΠ°ΠΊ Π΄ΠΎΠΌΠ° Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ Π·Π½Π°ΡΡ ΠΈ Π»ΡΠ±ΡΡ.
ΠΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ Π½Π°ΡΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ
ΠΡΡΠ°Π²Π°ΠΉΡΠ΅ΡΡ Π½Π° ΡΠ²ΡΠ·ΠΈ
ΠΠΎΠ΄Π½ΠΈΠΌΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΠΏΡΠΎΡΠΈΠ»Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π»ΠΈΠ΄Π΅ΡΠ° Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° — ΠΈ ΠΏΠΎΠΌΠΎΠ³ΠΈΡΠ΅ ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌ Π²Π°ΠΆΠ΅Π½.
ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ GitHub Connect
GitHub ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π½Π°ΠΌ Π²ΡΠ΅Π³Π΄Π° Π±ΡΡΡ Π² ΠΊΡΡΡΠ΅ Π»ΡΡΡΠΈΡ Π² ΠΎΡΡΠ°ΡΠ»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ². ΠΡ Ρ ΠΎΡΠΈΠΌ, ΡΡΠΎΠ±Ρ Π½ΠΎΠ²ΡΠ΅ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΈ Π·Π½Π°Π»ΠΈ, ΡΡΠΎ GitHub Π²Ρ ΠΎΠ΄ΠΈΡ Π² Π½Π°ΡΡ ΡΠ΅ΠΏΠΎΡΠΊΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΈ ΠΎΠ½ΠΈ ΡΠ°Π΄Ρ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ ΠΊ Π½Π°ΠΌ.
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΎΡΠ΄Π΅Π»Π° Π½ΠΎΠ²ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ
ΠΠΌΠ΅ΡΠΈΠΊΠ°Π½ΡΠΊΠΈΠ΅ Π°Π²ΠΈΠ°Π»ΠΈΠ½ΠΈΠΈ
ΠΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²
ΠΠΎΠΌΠΎΠ³ΠΈΡΠ΅ ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠ²ΠΎΠΈΡ Π½Π°Π²ΡΠΊΠΎΠ² ΡΠ°ΠΌ ΠΆΠ΅, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΠΏΠΈΡΡΡ.
ΠΠ·ΡΡΠΈΡΠ΅ Learning Lab
40%
Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π°Π΄Π°ΠΏΡΠ°ΡΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² *
639%
ΠΠΎΠ·Π²ΡΠ°Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΈΠΉ Π·Π° 3 Π³ΠΎΠ΄Π° *
45
ΠΠΈΠ½ΡΡ, ΡΡΠΊΠΎΠ½ΠΎΠΌΠ»Π΅Π½Π½ΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, Π² Π΄Π΅Π½Ρ *
* Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΎΡΠ½ΠΎΠ²Π°Π½Ρ Π½Π° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ· 1800 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ GitHub Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅Ρ Π»Π΅Ρ.
100 ΠΌΠ»Π½ +
Π§Π°ΡΡΠ½ΡΠ΅ ΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
1000 Ρ
Π‘ΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ
60%
ΠΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° Fortune 500
GitHub Enterprise
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π΄Π»Ρ Π²Π°ΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄.
$ 21
ΠΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ / Π² ΠΌΠ΅ΡΡΡ
ΠΠ΄ΠΈΠ½ΡΠΉ Π²Ρ ΠΎΠ΄ SAML
50 000 ΠΌΠΈΠ½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π² ΠΌΠ΅ΡΡΡ
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π΄Π»Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π²50 ΠΠ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° GitHub Packages
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π΄Π»Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π²Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ Π°ΡΠ΄ΠΈΡ
ΠΠ°ΡΠ°ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΏΡΠΎΠ±Π½ΡΡ Π²Π΅ΡΡΠΈΡ
ΠΠΎΠ²ΡΠΉ
GitHub One
Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π΄Π»Ρ ΠΈΠ½Π½ΠΎΠ²Π°ΡΠΈΠΉ
Π½Π° ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΈ.
ΠΡΠ΅, ΡΡΠΎ Π²Ρ ΠΎΠ΄ΠΈΡ Π² Enterprise
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°
24/7 ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°
ΠΠ΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅
Π‘Π²ΡΠ·Π°ΡΡΡΡ Ρ ΠΎΡΠ΄Π΅Π»ΠΎΠΌ ΠΏΡΠΎΠ΄Π°ΠΆ
ΠΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π½Π°ΡΠΈΠΌΠΈ ΠΏΠ»Π°Π½Π°ΠΌΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ
ΠΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ.ΠΡ Π²ΠΎΡΠ»ΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΡ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΠΊΠ½ΠΎΠΌ. ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅Π°Π½Ρ.
ΠΡ Π²ΡΡΠ»ΠΈ ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΠΈΠ»ΠΈ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΎΠΊΠ½Π΅. ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅Π°Π½Ρ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git: ΡΡΠ°Π½ΡΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΠΎΠΌ Π² Git Ρ ΡΡΠΈΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ
ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π² ΠΌΠΈΡΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Git. Git — Π·ΡΠ΅Π»ΡΠΉ, Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ Π² 2005 Π³ΠΎΠ΄Ρ ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ, ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌ ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Π΅ΠΌ ΡΠ΄ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Linux.ΠΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π½Π° Git Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Ρ Git, Ρ ΠΎΡΠΎΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² ΠΏΡΠ»Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΈ ΠΎΠ½ Ρ ΠΎΡΠΎΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΡΠΈΡΠΎΠΊΠΈΠΌ ΡΠΏΠ΅ΠΊΡΡΠΎΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΈ IDE (ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΠ΅Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ).
ΠΠΌΠ΅Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, Git ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ DVCS (ΠΎΡΡΡΠ΄Π° ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ). ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠΈ Π²Π΅ΡΡΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°ΡΡΠΎ Π±ΡΠ²Π°Π΅Ρ Π² Π½Π΅ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ CVS ΠΈΠ»ΠΈ Subversion (ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ SVN), Π² Git ΡΠ°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΏΠΈΡ ΠΊΠΎΠ΄Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ. ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΏΠΎΠ»Π½ΡΡ ΠΈΡΡΠΎΡΠΈΡ Π²ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΠΎΠΌΠΈΠΌΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ, Git Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Ρ ΡΡΠ΅ΡΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ.
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
ΠΠ΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Git ΠΎΡΠ΅Π½Ρ ΡΠΈΠ»ΡΠ½Ρ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π°ΠΌΠΈ. Π€ΠΈΠΊΡΠ°ΡΠΈΡ Π½ΠΎΠ²ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅, ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ»ΡΡ Π²Π΅ΡΡΠΈΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠ»Π³ΠΎΡΠΈΡΠΌΡ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π²Π½ΡΡΡΠΈ Git, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π³Π»ΡΠ±ΠΎΠΊΠΈΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΎΠ± ΠΎΠ±ΡΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠ°Ρ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π΄Π΅ΡΠ΅Π²ΡΠ΅Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡΡΡ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΊΠ°ΠΊΠΎΠ²Ρ ΡΠ°Π±Π»ΠΎΠ½Ρ Π΄ΠΎΡΡΡΠΏΠ°.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, Git Π½Π΅ ΠΎΠ±ΠΌΠ°Π½ΡΠ²Π°Π΅ΡΡΡ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠΌ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈ ΠΈΡΡΠΎΡΠΈΡ Π²Π΅ΡΡΠΈΠΉ Π΄Π΅ΡΠ΅Π²Π° ΡΠ°ΠΉΠ»ΠΎΠ², Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Git ΡΠΎΠΊΡΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΠ°ΠΌΠΎΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌ ΡΠ°ΠΉΠ»Π°. Π ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ², ΡΠ°ΠΉΠ»Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΡΠ°ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°ΡΡΡΡ, ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°ΡΡΡΡ. Π€ΠΎΡΠΌΠ°Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Π΄Π΅Π»ΡΡΠ°-ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ Π² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌ), ΡΠΆΠ°ΡΠΈΡ ΠΈ ΡΠ²Π½ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ Π²Π΅ΡΡΠΈΠΈ.
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΆΠ΅ Π΄Π°Π΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΠ»ΠΈΡΠ°, Π²Π½ΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠΎΡΡΠ΅Π³ΠΎ Π²ΡΠΏΡΡΠΊΠ° 2.0, Π° Π·Π°ΡΠ΅ΠΌ ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½Π° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°Π΄ Π²ΡΠΎΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΠΈ ΡΠΎΠΆΠ΅ ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΎΠ½ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ ΠΊΠ°ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΡΡΠΈ ΡΠ°Π±ΠΎΡΡ Π² ΠΈΡΡΠΎΡΠΈΠΈ Π²Π΅ΡΡΠΈΠΉ. ΠΠ°ΡΠ΅ΠΌ ΠΠ»ΠΈΡΠ° ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π½Π° Π²Π΅ΡΠ²Ρ Π²Π΅ΡΡΠΈΠΈ 1.3 ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡ ΡΡΠ°ΡΡΡ Π²Π΅ΡΡΠΈΡ. ΠΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΠ»ΠΈΡΡ Π²ΡΠΏΡΡΡΠΈΡΡ Π²Π΅ΡΡΠΈΡ 1 Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡΠΈΠ±ΠΎΠΊ.3.1, Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π³ΠΎΡΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ 2.0. ΠΠ°ΡΠ΅ΠΌ ΠΠ»ΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ Π² Π²Π΅ΡΠ²Ρ 2.0, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ Π½ΠΎΠ²ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π΄Π»Ρ 2.0, ΠΈ Π²ΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΡΠΈ ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π±ΡΡΡΡΠΎ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ. ΠΠ½Π° ΠΌΠΎΠ³Π»Π° ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π² ΡΠ°ΠΌΠΎΠ»Π΅ΡΠ΅. ΠΠΎΠ³Π΄Π° ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ Π³ΠΎΡΠΎΠ²Π° ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΠ»ΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ Β«ΠΏΡΠΎΡΠΎΠ»ΠΊΠ½ΡΡΡΒ» ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ
Git Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Ρ ΡΡΠ΅ΡΠΎΠΌ Π²ΡΡΠΎΡΠ°ΠΉΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ° ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΡΠΈΠ½Π½ΡΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°ΠΌΠΈ, Π²Π΅ΡΡΠΈΡΠΌΠΈ, ΡΠ΅Π³Π°ΠΌΠΈ ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡΠΌΠΈ — Π²ΡΠ΅ ΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git Π·Π°ΡΠΈΡΠ΅Π½Ρ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ Ρ Π΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ SHA1.ΠΡΠΎ Π·Π°ΡΠΈΡΠ°Π΅Ρ ΠΊΠΎΠ΄ ΠΈ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΊ ΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ , ΡΠ°ΠΊ ΠΈ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠ»Π½ΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΡΡΡ ΠΈΡΡΠΎΡΠΈΠΈ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Git, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΡΡΡ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½Π°Ρ ΠΈΡΡΠΎΡΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π²Π°ΡΠ΅Π³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π·Π°ΡΠΈΡΡ ΠΎΡ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎΠΉ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π»ΡΠ±ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠΈΠ±ΠΊΠΎΡΡΡ
ΠΠ΄Π½Π° ΠΈΠ· ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ΅Π»Π΅ΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Git — Π³ΠΈΠ±ΠΊΠΎΡΡΡ.Git Π³ΠΈΠ±ΠΎΠΊ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΡ : Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π²ΠΈΠ΄ΠΎΠ² Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΡΡ ΡΠ°Π±ΠΎΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π² ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΊΠ°ΠΊ Π² ΠΌΠ°Π»ΡΡ , ΡΠ°ΠΊ ΠΈ Π² ΠΊΡΡΠΏΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΈ ββΠ² ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°ΠΌΠΈ.
Git Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠΊΠ»Π°ΡΡΠ½ΡΡ Π³ΡΠ°ΠΆΠ΄Π°Π½ (Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ SVN), ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π»ΠΈΡΡΡ Π½Π° Π²Π΅ΡΠΊΠΈ ΠΈ ΡΠ΅Π³ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²ΡΠ°Ρ), ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ΅ Π²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΠΎΡ ΡΡΠΎΠ²Π΅Π½Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ.
ΠΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Git
Git — Π»ΡΡΡΠΈΠΉ Π²ΡΠ±ΠΎΡ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ. Π₯ΠΎΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·Π½ΡΠ΅ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π°Π½Π°Π»ΠΈΠ·, Π²ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Git ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²:
Git Ρ
ΠΎΡΠΎΡ
Git ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡΡ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Ρ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΡΠΈ Π°ΡΡΠΈΠ±ΡΡΡ Git ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Ρ Π²ΡΡΠ΅. ΠΡΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΌ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΈ Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎΠΌ Π΄ΡΡΠ³ΠΈΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ² ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π°Ρ ΠΎΠ΄ΡΡ Git ΠΎΡΠ΅Π½Ρ Π±Π»Π°Π³ΠΎΠΏΡΠΈΡΡΠ½ΡΠΌ.
Git — ΡΡΠ°Π½Π΄Π°ΡΡ Π΄Π΅-ΡΠ°ΠΊΡΠΎ
Git — Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠΎΠ΄Π΅. ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Git ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ. Π Atlassian ΠΏΠΎΡΡΠΈ Π²Π΅ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² Git.
ΠΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠΆΠ΅ ΠΈΠΌΠ΅ΡΡ ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Git, ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠ°ΡΡΡ Π²ΡΠΏΡΡΠΊΠ½ΠΈΠΊΠΎΠ² ΠΊΠΎΠ»Π»Π΅Π΄ΠΆΠ΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ Git. Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΠΏΠΎΠ΄Π½ΡΡΡΡΡ ΠΏΠΎ ΠΊΡΠΈΠ²ΠΎΠΉ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° Git Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΈΠ· ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΠΈ Π±ΡΠ΄ΡΡΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ°ΡΡΡΡ ΡΠ°Π±ΠΎΡΠ΅ Ρ Git.
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°ΠΌ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠ°Π΄ΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π·Π΅ΡΠ²Π° ΠΏΡΠ΅ΠΎΠ±Π»Π°Π΄Π°Π½ΠΈΠ΅ Git ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΈ ΡΠ»ΡΠΆΠ±Ρ ΡΠΆΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Ρ Ρ Git, Π²ΠΊΠ»ΡΡΠ°Ρ IDE, ΠΈ Π½Π°ΡΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ DVCS Π΄Π»Ρ Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΠ Sourcetree, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Jira ΠΈ ΡΠ»ΡΠΆΠ±Π° Ρ ΠΎΡΡΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π° Bitbucket.
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ΠΎΠΏΡΡΠ½ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΆΠ΅Π»Π°ΡΡΠΈΠΉ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΡΠΈ ΡΠ΅Π½Π½ΡΠ΅ Π½Π°Π²ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ Π΄ΠΎΡ ΠΎΠ΄ΠΈΡ Π΄ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, Git Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΡΠΏΠΈΡΠΊΠ΅.
Git — ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ
Git — ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΡΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΡΡΠΈ Π»Π΅Ρ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡ. Π‘ΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ Π²Π·Π²Π΅ΡΠ΅Π½Π½ΠΎΠ΅ ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈ Π·ΡΠ΅Π»ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΡΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΠΏΡΡΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΡΡΠ°ΡΡ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ. ΠΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΈ Π±Π΅ΡΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π² Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π½Π° ΡΡΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ.
Git ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΈ ΠΎΠ±ΡΠΈΡΠ½ΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ Π±Π°Π·ΠΎΠΉ.ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½Π°Ρ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΊΠ½ΠΈΠ³ΠΈ, ΡΡΠ΅Π±Π½ΡΠ΅ ΠΏΠΎΡΠΎΠ±ΠΈΡ ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΡ. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ°ΡΡΡ ΠΈ Π²ΠΈΠ΄Π΅ΠΎΡΡΠΎΠΊΠΈ.
ΠΡΠΊΡΡΡΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ½ΠΈΠΆΠ°Π΅Ρ Π·Π°ΡΡΠ°ΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²-Π»ΡΠ±ΠΈΡΠ΅Π»Π΅ΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git Π±Π΅Π· ΠΎΠΏΠ»Π°ΡΡ. ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Git, Π½Π΅ΡΠΎΠΌΠ½Π΅Π½Π½ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΅ΠΌΠ½ΠΈΠΊΠΎΠΌ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠΉ ΡΡΠΏΠ΅ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, SVN ΠΈ CVS.
ΠΡΠΈΡΠΈΠΊΠ° Git
Git ΡΠ°ΡΡΠΎ ΠΊΡΠΈΡΠΈΠΊΡΡΡ Π·Π° ΡΠΎ, ΡΡΠΎ Π΅Π³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΈΠ·ΡΡΠΈΡΡ.ΠΠ΅ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ Π² Git Π±ΡΠ΄Π΅Ρ Π½ΠΎΠ²ΠΎΠΉ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ² ΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π΄ΡΡΠ³ΠΈΡ
ΡΠΈΡΡΠ΅ΠΌ, ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ Git ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΡΡΠ³ΠΎΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, revert
Π² Git ΠΈΠΌΠ΅Π΅Ρ Π΄ΡΡΠ³ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠ΅ΠΌ Π² SVN ΠΈΠ»ΠΈ CVS. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Git ΠΎΡΠ΅Π½Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ²ΠΎΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ. Π§ΡΠΎΠ±Ρ Π½Π°ΡΡΠΈΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΠΈΠ»Ρ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ ΠΈΠ·ΡΡΠ΅Π½Π°, ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΠΈΠ»Ρ Π΄Π»Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΡ.
ΠΠ»Ρ ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΡΡΠΏΠ°ΡΡ ΠΈΠ· Π½Π΅ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ VCS, Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Ρ ΠΎΡΠΎΡΠ΅ΠΉ Π²Π΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ΠΈ Π½Π΅ Ρ ΠΎΡΡΡ ΡΠ΅ΡΡΡΡ.ΠΠ΄Π½Π°ΠΊΠΎ, Ρ ΠΎΡΡ Git Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ ΠΊΠ°ΠΊ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ (DVCS), Ρ Git Π²Ρ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ°Π½ΠΎΠ½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ½Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Git, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½, ΠΈΡ ΡΠ°Π±ΠΎΡΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ Β«ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎΒ» ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΡΡΠΎΠ΅Π² ΠΈΠ»ΠΈ Π² Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Git ΡΠ²Π»ΡΠ΅ΡΡΡ Π³ΠΈΠ±ΠΊΠΈΠΌ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΡΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π²Ρ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ, Π½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Git, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΎΡΠΎΠ·Π½Π°Π²Π°ΡΡ, ΡΡΠΎ Π²Π°ΠΌ Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ.
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΠ΅, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΡΠΈΡΠ°ΠΉΡΠ΅ Π΄Π°Π»ΡΡΠ΅, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Git ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΄Π»Ρ Π²ΡΠ΅ΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ.
ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈ ΠΊΠ°ΠΊ ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ
Git — ΡΡΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ . Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ², ΡΡΠΎΠ±Ρ Π΄Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Git.
ΠΠΎΠ·Π²ΠΎΠ»ΡΡΠ΅ ΠΌΠ½Π΅ ΡΠ°Π·Π±ΠΈΡΡ Π΅Π³ΠΎ ΠΈ ΠΏΠΎΡΡΠ½ΠΈΡΡ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΡ:
- Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ: ΠΡΠΎ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Git — ΡΡΠΎ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°.Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Git ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° — ΠΎΠ½ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΈΠ·-Π·Π° Π΄ΡΡΠ³ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ.
- Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ : ΠΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² Git, ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΊΠΎΠ΄ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ Ρ ΡΡΠΈΠΌ, ΡΠΎΡ ΡΠ°Π½ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ΅Π΄ΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Git ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠ°ΠΊ Π²Π΅ΡΠΊΠΈ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΡ, ΠΎ ΠΊΠΎΡΠΎΡΡΡ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΏΠΎΠ·ΠΆΠ΅.
- Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ : Git ΠΈΠΌΠ΅Π΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΡΠ°Π½ΠΈΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅, ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΡΠ°Π½ΠΈΡΡΡ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΊΠΎΠ΄ Π½Π΅ ΠΏΡΠΎΡΡΠΎ Ρ ΡΠ°Π½ΠΈΡΡΡ Π½Π° ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅, Π½ΠΎ ΠΏΠΎΠ»Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π½Π° Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Git — ΡΡΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠ΄ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΠΎΠ·ΠΆΠ΅ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΎΠ±ΡΡΡΠ½Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ½Π° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΠΊ Git
Π ΡΠ΅Π°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ. ΠΠΎΡΡΠΎΠΌΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΠΊ Git, ΡΡΠΎΠ±Ρ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΊΠΎΠ΄Π° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠ°ΠΊΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΡΠ°ΡΡΠΎ ΠΌΠ΅Π½ΡΡΡΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π°.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ, Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΎΠ΄Π½Ρ ΠΈ ΡΡ ΠΆΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Ρ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² Git.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΈΡΡΡΠΏΠΈΠΌ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Git ΡΠ΅ΠΉΡΠ°Ρ
ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΏΠΎΠΌΠΈΠ½Π°ΡΡ ΡΡΠ°Π·Ρ Π²ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ, Ρ ΠΎΠ±ΡΡΡΠ½Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ Git Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΡΡΠΎΠ±Ρ Π±ΡΠ»ΠΎ Π»Π΅Π³ΡΠ΅ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ.
ΠΠ°Π³ΡΡΠ·ΠΈΡΡ git
ΠΠΎ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Git Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
:
https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
ΠΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ Git ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅:
git --version
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΠΏΠ°ΠΏΠΊΡ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ°Π·ΠΎΠ²Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° simple-git-demo
.
ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π² ΠΏΡΠΎΠ΅ΠΊΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
cd simple-git-demo
git init
ΠΠΎΠΌΠ°Π½Π΄Π° git init
Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git.
ΠΠ°Π²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΊΠΎΠ΄ ΡΠ΅ΠΉΡΠ°Ρ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ demo.txt
Π² ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ:
ΠΡΡ
ΠΎΠ΄Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅
ΠΠ΄Π΅ΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΠΊΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ΅Π°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ Git, Π° Π½Π΅ ΠΊΠ°ΠΊΠΎΠΌΡ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΡΠ·ΡΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π Π°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π°
Π€ΠΈΠΊΡΠ°ΡΠΈΡ — ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΊΠΎΠ΄ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ .ΠΠ΅ΡΠ΅Π΄ ΡΠΈΠΊΡΠ°ΡΠΈΠ΅ΠΉ ΠΊΠΎΠ΄Π° ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ . ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ.
ΠΡΠ±ΠΎΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ, Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½. ΠΡΠΎ Π΄Π°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ.
Staging
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°:
git add demo.txt
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ², Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ:
git add file1 file2 file3
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git add.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π² ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ.
Π€ΠΈΠΊΡΠ°ΡΠΈΡ
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΡΠ°ΠΉΠ»Π°:
git commit -m Β«ΠΠ°ΡΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡΒ»
Β«ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡΒ» — ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π·Π΄Π΅ΡΡ. ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π±ΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°Π½Ρ Π² ΡΡΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.
Git Status ΠΈ Git Log
Π’Π΅ΠΏΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ» demo.txt
ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ:
ΠΠ°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ
Status
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ git status
, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ — ΠΎΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π΄ΡΡΠ³ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΏΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΡΠ°ΡΡΡΠ°:
git status
Π‘ΡΠ°ΡΡΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ demo.txt
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ ΠΈ Π΅ΡΠ΅ Π½Π΅ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ.
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ demo.txt
Π² ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git add demo.txt git commit -m "ΡΠ°ΠΉΠ» demo.txt ΠΈΠ·ΠΌΠ΅Π½Π΅Π½"
Log
Use git log
, ΡΡΠΎΠ±Ρ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΡΡ Π²ΡΠ΅ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π΄ΠΎ ΡΠΈΡ
ΠΏΠΎΡ ΠΊΠΎΠΌΠΌΠΈΡΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°:
git log
Π ΠΆΡΡΠ½Π°Π»Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π°Π²ΡΠΎΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, Π΄Π°ΡΠ° ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.
Π€ΠΈΠ»ΠΈΠ°Π»Ρ
ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΌΡ Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π²Π΅ΡΠΎΠΊ Π² Git. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΡ Git ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² Π²Π΅ΡΠΊΡ master .
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΠ»ΠΈΠ°Π»?
ΠΠ΅ΡΠ²Ρ — ΡΡΠΎ Π½Π΅ ΡΡΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git. ΠΡΠ°ΠΊ, Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π½Π°ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠ²Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ Π½Π° Π²ΡΠΎΡΡΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Β«.txt ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ Β»
.
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠ»ΠΈΠ°Π»ΠΎΠ²?
ΠΠ»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΎΠΊ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠ²Π΅ΠΉ. Π‘ΠΌ. ΠΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½ΠΈΠΆΠ΅, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²Π΅ΡΠΊΠΈ.
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΡ 1 ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡ 2 Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡ Π² Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅. ΠΠΎΡΠ»Π΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ 2 ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«TestΒ», ΠΈ Π² ΡΠ΅ΡΡΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ 3 ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡ 4.
Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π² Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠ²Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ 3 ΠΈ 4. ΠΠ΄Π΅ΡΡ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ 2 Π΄Π²Π΅ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π² Π΄Π²ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠ²ΡΡ .
ΠΠ΄Π΅ΡΡ ΡΠ΅ΡΡΠΎΠ²Π°Ρ Π²Π΅ΡΠ²Ρ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠ²Ρ ΡΠ°Π·ΠΎΡΠ»ΠΈΡΡ ΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π½ΡΠΉ ΠΊΠΎΠ΄ — ΠΊΠΎΠ΄ ΠΈΠ· ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Ρ Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ git merge
. ΠΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΎ ΠΏΠΎΠ·ΠΆΠ΅.
Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ test , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git branch test
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°Π΅Ρ Π²Π΅ΡΠ²Ρ test
.
ΠΡ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ
ΠΎΠ΄ΠΈΠΌΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π²Π΅ΡΠΊΠΈ master.ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° Π½Π° ΡΠ΅ΡΡΠΈΡΡΠΉΡΠ΅ Π²Π΅ΡΠΊΡ
. ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git checkout test
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ Π½Π°Ρ
ΠΎΠ΄ΠΈΠΌΡΡ Π² Π²Π΅ΡΠΊΠ΅ test
.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π²ΡΠ΅ Π²Π΅ΡΠΊΠΈ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git branch
Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠ΅
ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ demo.txt
, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ:
ΠΡΡ
ΠΎΠ΄Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈΠ· ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΡΠ°ΠΏ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git add demo.txt git commit -m "Test Branch Commit"
ΠΡΠ° ΡΠΈΠΊΡΠ°ΡΠΈΡ Π±ΡΠ»Π° ΡΠ΄Π΅Π»Π°Π½Π° Π² ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠ΅, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ΅ΡΡΠΎΠ²Π°Ρ Π²Π΅ΡΠ²Ρ ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°Π΅Ρ Master Branch Π½Π° 1 ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅ΡΡΠΎΠ²Π°Ρ Π²Π΅ΡΠ²Ρ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ 2 ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈΡΡΠΎΡΠΈΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π² Test Branch, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ:
git log
Merging
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Test Branch ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°Π΅Ρ Master Π½Π° 1 ΡΠΈΠΊΡΠ°ΡΠΈΡ. ΠΠΎΠΏΡΡΡΠΈΠΌ, ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΡ Ρ
ΠΎΡΠΈΠΌ, ΡΡΠΎΠ±Ρ Π²Π΅ΡΡ ΠΊΠΎΠ΄ ΠΈΠ· ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Π±ΡΠ» Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ Π² Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠ²Ρ.ΠΠ΄Π΅ΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π΅Π½ git merge
.
Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΊΠΎΠ΄ ΠΈΠ· ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠ²Ρ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ:
Π‘Π½Π°ΡΠ°Π»Π° Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ Π² Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠΊΡ:
git checkout master
ΠΠ°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ merge
:
git merge test
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ Π΄Π²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΡΠΏΠ΅ΡΠ½ΡΠΌ. Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½Π΅Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ².
ΠΠΎ Π² ΡΠ΅Π°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΏΡΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠΈ Π±ΡΠ΄ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ.Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° — ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Ρ ΠΎΠΏΡΡΠΎΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ, ΡΠ°Π±ΠΎΡΠ°Ρ Π±ΠΎΠ»ΡΡΠ΅ Ρ Git, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΠΈΡΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ git log
, ΠΈ Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅, ΡΡΠΎ ΠΌΠ°ΡΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ 3 ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.
Π£Π΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git
ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π½ΠΎ, Π² ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ², ΠΎΠ½ ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΠΊΠΎΠ΄ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π²ΠΈΠ΄Π΅ΡΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄.
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π²
GitHub
ΠΠ΄Π΅ΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GitHub Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π½Π° https://github.com/ ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Π½Π° Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ GitHub ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ Start a Project , ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git. ΠΠ°ΠΉΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈΠΌΡ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β«Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉΒ».
ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΈΠΌΡ ΠΊΠ°ΠΊ git-blog-demo
.
ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² GitHub, ΠΈ ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΎΡΠΊΡΠΎΠ΅ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°, ΠΏΠΎΠ΄ΠΎΠ±Π½Π°Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½ΠΈΠΆΠ΅:
URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ — ΡΡΠΎ Π²ΡΠ΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠ°ΡΡΡ https: // github.com / aditya-sridhar / git-blog-demo.git
Π§ΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π²Π°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git remote add origin [url ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ]
Git Push
Π§ΡΠΎΠ±Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π²Π΅ΡΡ ΠΊΠΎΠ΄ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git push -u origin master
ΠΡΠΎ ΠΏΠΎΠ΄ΡΠ°Π»ΠΊΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ΄ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π² Π³Π»Π°Π²Π½Π°Ρ Π²Π΅ΡΠΊΠ° Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
Git Pull
git pull
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ. ΠΠΎΠ΄ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ git pull
:
git pull origin master
Git Clone
git clone
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° Π²Π°Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°:
git clone [URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ]
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Git, ΡΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡΠ΅ ΠΈ ΠΈΡΡΠ»Π΅Π΄ΡΠΉΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅!
Π― ΡΠΊΠΎΡΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΡΡ Π΅ΡΠ΅ ΠΎΠ΄Π½Ρ ΡΡΠ°ΡΡΡ ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΡ Git.ΠΡΠ΄ΡΡΠ΅ Π½Π° ΡΠ²ΡΠ·ΠΈ!
ΠΠ± Π°Π²ΡΠΎΡΠ΅
Π― Π»ΡΠ±Π»Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΡΠ»Π΅ΠΆΡ Π·Π° ΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΠΌ. ΠΠ½Π΅ ΡΠ°ΠΊΠΆΠ΅ Π½ΡΠ°Π²ΠΈΡΡΡ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π΄ΡΡΠ³ΠΈΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ²ΠΎΠΈ Π·Π½Π°Π½ΠΈΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.
ΠΠ΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΡΠ²ΡΠ·Π°ΡΡΡΡ ΡΠΎ ΠΌΠ½ΠΎΠΉ Π² ΠΌΠΎΠ΅ΠΉ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ LinkdIn https://www.linkedin.com/in/aditya1811/
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° ΠΌΠ΅Π½Ρ Π² Twitter https://twitter.com/adityasridhar18
ΠΠΎΠΉ Π²Π΅Π±-ΡΠ°ΠΉΡ: https : //adityasridhar.com/
ΠΡΡΠ³ΠΈΠ΅ ΠΌΠΎΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
ΠΠ°ΠΊ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Git ΠΈ GitHub Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ (Π£ΡΠ΅Π±Π½ΠΈΠΊ)
ΠΠΏΠ΅ΡΠ²ΡΠ΅ Π² git? ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΡΠΎΠ±Ρ ΠΎΡΠ²ΠΎΠΈΡΡΡΡ Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±Π°Π·Ρ ΠΊΠΎΠ΄Π°, ΠΎΡΠΊΡΡΡΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ° Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ (PR) ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π° Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΡΡ.ΠΡΠ΅ Π²Π°ΠΆΠ½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ git ΠΈ GitHub Π²ΡΠ΄Π΅Π»Π΅Π½Ρ ΠΆΠΈΡΠ½ΡΠΌ ΡΡΠΈΡΡΠΎΠΌ ΡΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ git.
Π¨Π°Π³ 0: Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ git ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ GitHub
ΠΠ΅ΡΠ²ΡΠ΅ Π΄Π²Π΅ Π²Π΅ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ git ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ GitHub.
Π‘Π»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ Π·Π΄Π΅ΡΡ, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ git (Π΅ΡΠ»ΠΈ ΠΎΠ½ Π΅ΡΠ΅ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½). ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ git ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅. Π₯ΠΎΡΡ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ»ΠΈΡΠ½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ git (Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ), Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° ΠΈΠ·ΡΡΠΈΡΡ git, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π»Ρ git ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ git, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ ΠΎΡΠ²ΠΎΠΈΡΠ΅ΡΡ Ρ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: 95% Π΄ΡΡΠ³ΠΈΡ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠΉ git ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π·Π΄Π΅ΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ GitHub.
Git ΠΈ GitHub
ΠΠ΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΎΡΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅: git ΠΈ GitHub — ΡΡΠΎ , Π° Π½Π΅ . Git — ΡΡΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π² 2005 Π³ΠΎΠ΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌΠΈ Π½Π°Π΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Linux; GitHub — ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½Π°Ρ Π² 2008 Π³ΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΡΡΡΡ Ρ git. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ΅Π½ GitHub Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ git, Π½ΠΎ Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GitHub Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ git.ΠΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ² GitHub, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ GitLab, BitBucket, ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ gogs ΠΈ gittea. ΠΡΠ΅ ΠΎΠ½ΠΈ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π² git-speak Β«ΠΏΡΠ»ΡΡΠ°ΠΌΠΈΒ» ΠΈ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠ»ΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ git, Π½ΠΎ ΡΡΠΎ ΡΠΏΡΠΎΡΡΠΈΡ ΠΎΠ±ΠΌΠ΅Π½ Π²Π°ΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ.
Π¨Π°Π³ 1. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ git
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ git Π²Ρ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ (ΠΈΠ»ΠΈ, ΡΠ°ΡΡΠΎ, Π΄Π»Ρ ΠΊΡΠ°ΡΠΊΠΎΡΡΠΈ, Β«ΡΠ΅ΠΏΠΎΒ»).
ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ git ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π». ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΎΠΏΡΡΠ° ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠΌ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΡΡΠΈΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ (Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ / Π½Π΅ Π½ΡΠΆΠ΄Π°Π΅ΡΠ΅ΡΡ Π² ΠΊΠΎΡΠΎΡΠΊΠΎΠΌ ΡΡΠΎΠΊΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ ΠΊ ΡΠ°Π³Ρ 3).
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ ΡΡΠ΄Π°, Π³Π΄Π΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ cd (ΡΠΌΠ΅Π½ΠΈΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΠ°ΠΏΠΊΠ° Β«ΠΏΡΠΎΠ΅ΠΊΡΡΒ» Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΡΠΎΠ»Π΅, Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅:
Π§ΡΠΎΠ±Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ git Π² ΠΊΠΎΡΠ½Π΅ ΠΏΠ°ΠΏΠΊΠΈ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git init:
Π¨Π°Π³ 2. ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΏΠΎ
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Π² ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π½ΡΠ°Π²ΠΈΡΡΡ, ΠΈΠ»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Π½ΡΠΎΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.`touch newfile.txt` ΠΏΡΠΎΡΡΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ newfile.txt.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Ρ Π² ΠΏΠ°ΠΏΠΊΠ΅, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ git, git Π·Π°ΠΌΠ΅ΡΠΈΡ, ΡΡΠΎ ΡΠ°ΠΉΠ» ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²Π½ΡΡΡΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠΎ git Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΠ°ΠΉΠ», Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ²Π½ΠΎ Π½Π΅ ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΡΠΎ. Git ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ / ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ°ΠΉΠ»Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ , ΠΏΠΎΡΡΠΎΠΌΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ, ΡΡΠΎ Π΄Π°, ΠΌΡ Ρ ΠΎΡΠΈΠΌ, ΡΡΠΎΠ±Ρ git ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π» Π½Π°Ρ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ».
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git status, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·Π²Π΅ΡΡΠ½Ρ git.
ΠΠΎ ΡΡΡΠΈ, Π·Π΄Π΅ΡΡ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ: Β«ΠΠΉ, ΠΌΡ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ, ΡΡΠΎ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ mnelson.txt, Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ‘git add’, ΠΌΡ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ Π½ΠΈΡΠ΅Π³ΠΎ Ρ Π½ΠΈΠΌ Π΄Π΅Π»Π°ΡΡΒ».
ΠΠ½ΡΠ΅ΡΠ»ΡΠ΄ΠΈΡ: ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°Ρ ΡΡΠ΅Π΄Π°, ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΈ Π²Ρ
ΠΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΡ ΡΠ°ΡΡΠ΅ΠΉ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΈΠ·ΡΡΠ°Π΅ΡΠ΅ git, — ΡΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Ρ ΠΈ Π΅Π΅ ΡΠ²ΡΠ·Ρ Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠ΅ΠΉ.
ΠΠΎΠΌΠΌΠΈΡ — ΡΡΠΎ Π·Π°ΠΏΠΈΡΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Ρ Π²Π½Π΅ΡΠ»ΠΈ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°.ΠΠΎ ΡΡΡΠΈ, Π²Ρ Π²Π½ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ Π΅Π³ΠΎ), Π° Π·Π°ΡΠ΅ΠΌ Π³ΠΎΠ²ΠΎΡΠΈΡΠ΅ git, ΡΡΠΎΠ±Ρ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ Π² ΠΊΠΎΠΌΠΌΠΈΡ.
ΠΠΎΠΌΠΌΠΈΡΡ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΌ Π΄ΡΡΠ³ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅.
ΠΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°ΡΡ git, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π² ΠΊΠΎΠΌΠΌΠΈΡ? ΠΠΌΠ΅Π½Π½ΠΎ Π·Π΄Π΅ΡΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°Ρ ΡΡΠ΅Π΄Π° ΠΈΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ Π½Π° ΡΠ°Π³Π΅ 2, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π²Π½ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎ, git Π·Π°ΠΌΠ΅ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠ°ΠΉΠ» Π±ΡΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, Π½ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ Ρ Π½ΠΈΠΌ Π½ΠΈΡΠ΅Π³ΠΎ Π΄Π΅Π»Π°ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π΅Π³ΠΎ Π² ΠΊΠΎΠΌΠΌΠΈΡ).
Π§ΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΉΠ» Π² ΠΊΠΎΠΌΠΌΠΈΡ, Π²Π°ΠΌ ΡΠ½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add
(ΡΠΌ. Π¨Π°Π³ 3 Π½ΠΈΠΆΠ΅). ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΎΡΠΈΡΠ΅, Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ git ΡΠΏΠ°ΠΊΠΎΠ²Π°ΡΡ ΠΈΡ Π² ΠΊΠΎΠΌΠΌΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git commit.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°Ρ ΡΡΠ΅Π΄Π°, ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ Β«ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°ΡΒ», ΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΎΠ²ΡΠΌ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠΌ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ, Π½ΠΎ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΠΎΠ½Π° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«ΠΈΠ½Π΄Π΅ΠΊΡΒ».
Π¨Π°Π³ 3. ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ°ΠΉΠ» Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ
ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ°ΠΉΠ» Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add.
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git status, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ git Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΡΠ°ΠΉΠ» Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ (ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΡΡΠΎΠΊΡ Β«ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡΒ»).
ΠΠΎΠ²ΡΠΎΡΡΡ, Π² ΡΠ°ΠΉΠ»Π΅ , Π° Π½Π΅ , ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΠ΅ Π±ΡΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΠΊΠΎΠΌΠΌΠΈΡ, Π½ΠΎ Π²ΠΎΡ-Π²ΠΎΡ Π΄ΠΎΠ±Π°Π²ΡΡΡΡ.
Π¨Π°Π³ 4. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΡ
ΠΠΎΡΠ° ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ!
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git commit -m Β«ΠΠ°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΠΈΒ»
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΎΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ — ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ, ΡΡΠΎ Π½ΠΎΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ, ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΊΠΈ.ΠΠ΅ ΠΏΠΎΠΌΠ΅ΡΠ°ΠΉΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠ° Β«asdfadsfΒ» ΠΈΠ»ΠΈ Β«foobarΒ». ΠΡΠΎ ΠΎΠ³ΠΎΡΡΠ°Π΅Ρ Π΄ΡΡΠ³ΠΈΡ Π»ΡΠ΄Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΈΠ΄ΡΡ Π²Π°Ρ ΠΊΠΎΠΌΠΌΠΈΡ. ΠΡΠ΅Π½Ρ ΠΎΡΠ΅Π½Ρ ΠΏΠ΅ΡΠ°Π»ΡΠ½ΠΎ. ΠΠΎΠΌΠΌΠΈΡΡ ΠΆΠΈΠ²ΡΡ Π²Π΅ΡΠ½ΠΎ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ (ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΡ , Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ, Π½ΠΎ ΡΡΠΎ Π±Π΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ½ΠΎ), ΠΏΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΡΡΠ°Π²ΠΈΡΠ΅ ΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π±ΡΠ΄ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ!) ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΡΠ°ΡΡΡΡ ΠΏΠΎΠ½ΡΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· Π³ΠΎΠ΄Ρ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π¨Π°Π³ 5: Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π½ΠΎΠ²ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠΎΠ΅.
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, Π½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΠ΅ΡΡ ΠΎ Π²Π½Π΅ΡΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ΄Π΅ΡΡ ΠΈ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π²Π΅ΡΠΊΠΈ git.
ΠΠ΅ΡΠ²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²Π°ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Β«ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈΒ» ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ git ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ Π²Π΅ΡΠΊΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: Β«ΠΠ΅ΡΠ²Ρ Π² Git — ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π»Π΅Π³ΠΊΠΈΠΉ ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²Β». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π½Π° ΡΠ²ΠΎΠΉ Π²Π΅Π±-ΡΠ°ΠΉΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ. Π½Π΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅ ΡΠΎ ΡΡΡΠ°Π½ΠΈΡΠ΅ΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ²ΠΎΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ. ΠΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Git ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ, ΠΎΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π²Π°ΡΠ° Π²Π΅ΡΠΊΠ° Β«ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½Π°Β», ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π·Π½Π°Π΅Ρ ΠΈΡΡΠΎΡΠΈΡ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ²ΠΎΠ΅ΠΉ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠΎΡ ΡΡΠΎ Π²Ρ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅: ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ git checkout -b <ΠΈΠΌΡ ΠΌΠΎΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ>. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π° Π·Π°ΡΠ΅ΠΌ Β«ΠΏΡΠΎΠ²Π΅ΡΠΈΡ Π²Π°ΡΒ», ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ git ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡ Π²Π°Ρ Π² ΡΡΡ Π²Π΅ΡΠΊΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ.
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ, ΡΡΠΎ Π²Π°ΡΠ° Π²Π΅ΡΠΊΠ° Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π°:
ΠΠΌΡ Π²Π΅ΡΠΊΠΈ ΡΠΎ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΎΠΉ ΡΡΠ΄ΠΎΠΌ Ρ Π½Π΅ΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, Π² ΠΊΠ°ΠΊΠΎΠΉ Π²Π΅ΡΠΊΠ΅ Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΊ Π½Π°Π·Π²Π°Π½ΠΈΡΠΌ ΡΠΈΠ»ΠΈΠ°Π»ΠΎΠ²
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΠ²Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ git Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ `master` (ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅). Π ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΠ±ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ Π±ΠΎΡΡΠ±Π΅ Ρ ΡΠ°ΡΠΈΠ·ΠΌΠΎΠΌ Π² ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½Π΄ΡΡΡΡΠΈΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π³ΡΡΠΏΠΏΡ Π½Π°ΡΠ°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Π΄Π»Ρ Π²Π΅ΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Β«ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉΒ»).Π Π΄ΡΡΠ³ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΡΡΠ΅ΡΠΈΡΡ Β«Π³Π»Π°Π²Π½ΡΠΉΒ» ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ. ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π½Π°Π·Π²Π°Π½ΠΈΡ, ΠΏΡΠΎΡΡΠΎ ΠΈΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΠΏΠΎΡΡΠΈ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠ»ΠΈ ΡΡΠΎ Π²Π΅Π±-ΡΠ°ΠΉΡ, ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠ²Ρ — ΡΡΠΎ Π²Π΅ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²ΠΈΠ΄ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ. ΠΡΠ»ΠΈ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠ²Ρ — ΡΡΠΎ Π²Π΅ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ. ΠΡΠΎ Π½Π΅ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ (git Π½Π΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π²Π΅ΡΠΊΠΈ ΠΈΠ½Π°ΡΠ΅, ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ), Π½ΠΎ ΡΡΠΎ ΡΠΎ, ΠΊΠ°ΠΊ git ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° Π²Π΅ΡΠΎΠΊ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½Π° GitHub Π΅ΡΡΡ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π΄Π΅ΡΡ: https://github.com/github/renaming
Π’Π΅ΠΏΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²Π΅ΡΠ½Π΅ΡΠ΅ΡΡ ΠΊ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ ΠΈ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π²Π°ΡΠ° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Π½Π΅ ΡΠ²ΠΈΠ΄ΠΈΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΈΠ· ΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΏΠΎΠΊΠ° Π²Ρ Π½Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ²ΠΎΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ.
Π¨Π°Π³ 6. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° GitHub
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΡΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GitHub.ΠΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GitHub Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎ Π½Π° GitHub, Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π½Π° Π΄ΠΎΠΌΠ°ΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ GitHub. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΠΎΠΏΡΠΈΡ Β«ΠΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉΒ» ΠΏΠΎΠ΄ Π·Π½Π°ΠΊΠΎΠΌ Β«+Β» ΡΡΠ΄ΠΎΠΌ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ Π² ΠΏΡΠ°Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ ΠΏΠ°Π½Π΅Π»ΠΈ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ:
ΠΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ GitHub ΠΏΠΎΠΏΡΠΎΡΠΈΡ Π²Π°Ρ Π½Π°Π·Π²Π°ΡΡ ΡΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Β«Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉΒ», ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
GitHub ΡΠΏΡΠΎΡΠΈΡ, Ρ ΠΎΡΠΈΡΠ΅ Π»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎ Ρ Π½ΡΠ»Ρ ΠΈΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ΅ΠΏΠΎ, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ Π½Π° GitHub, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ Β«…. ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈΒ»:
(ΠΡ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ URL-Π°Π΄ΡΠ΅Ρ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ GitHub ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅Ρ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π°ΡΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ GitHub ΠΈ ΠΈΠΌΡ ΡΠ΅ΠΏΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ.)
Π¨Π°Π³ 7. ΠΡΠΏΡΠ°Π²ΡΡΠ΅ Π²Π΅ΡΠΊΡ Π½Π° GitHub
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΎΡΠΏΡΠ°Π²ΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠ· Π²Π°ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ Π² Π½ΠΎΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GitHub.ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠΌ Π»ΡΠ΄ΡΠΌ Π²ΠΈΠ΄Π΅ΡΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ Π²Π°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Ρ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ.
Π§ΡΠΎΠ±Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½Π° GitHub, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ git push origin yourbranchname. GitHub Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π»Ρ Π²Π°Ρ Π²Π΅ΡΠΊΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
ΠΠ°ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΡΠΎ ΡΠ»ΠΎΠ²ΠΎ «origin» Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π΅. ΠΠΎΠ³Π΄Π° Π²Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΡΠ΅ΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, git ΡΠΎΠ·Π΄Π°Π΅Ρ Π΄Π»Ρ Π²Π°Ρ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ.ΠΠΎΡΡΠΈ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ ΡΡΠΎΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅Β». ΠΠΎ ΡΡΡΠΈ, ΡΡΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ URL-Π°Π΄ΡΠ΅ΡΠ° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ: git push [email protected]: git / git.git yourbranchname ΠΈΠ»ΠΈ git push origin yourbranchname
(ΠΡΠ»ΠΈ Π²Ρ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ GitHub Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π²ΠΎΠΉΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΡ Ρ Π²Π°ΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ GitHub.)
ΠΡΠ»ΠΈ Π²Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ GitHub, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π²Π΅ΡΠΊΠ° Ρ Π²Π°ΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π±ΡΠ»Π° ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π° Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΅Π»ΠΊΠ½ΡΡΡ ΡΡΡΠ»ΠΊΡ Β«Π²Π΅ΡΠΊΠΈΒ», ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ°ΠΌ ΡΠ²ΠΎΡ Π²Π΅ΡΠΊΡ.
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΆΠΌΠΈΡΠ΅ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π²ΡΡΠ΅. ΠΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΠ΅ΡΠ΅Π½ΠΎΡ !
Π¨Π°Π³ 8. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π·Π°ΠΏΡΠΎΡ Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ (PR)
ΠΠ°ΠΏΡΠΎΡ Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ PR) — ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄ΠΈΡΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅Π² ΡΠ΅ΠΏΠΎ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²Π½Π΅ΡΡΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡ ΠΊΠΎΠ΄. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠΌ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠΎΠ΄ ΠΈ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΎΠ½ Ρ ΠΎΡΠΎΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ.
ΠΠΎΡ ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ PR-ΡΡΡΠ°Π½ΠΈΡΠ° Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π΅Π΅ ΠΎΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ:
Π Π²ΠΎΡ ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ PR-Π·Π°ΠΏΡΠΎΡ:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π±ΠΎΠ»ΡΡΡΡ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Π²Π½ΠΈΠ·Ρ Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ Β«Merge pull requestΒ».ΠΠ°ΠΆΠ°Π² Π½Π° ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ, Π²Ρ Π²Π½Π΅ΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ.
ΠΠ½ΠΎΠ³Π΄Π° Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΡΠΎΠ²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ ΠΈΠ»ΠΈ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎ, ΠΈ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ PR Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π²Π°ΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π΅Π³ΠΎ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π²Π΅ΡΡΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΡΠ²ΠΎΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈ Π²ΡΠ΅Π³Π΄Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΏΡΠΈ Π²Π½Π΅ΡΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
Π¨Π°Π³ 9: ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ PR
ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅Β». ΠΡΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡ Π²Π°ΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ.
ΠΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅, Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π°ΡΡ Π²Π΅ΡΠΊΡ (ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π΅ΡΠΎΠΊ ΠΌΠΎΠ³ΡΡ ΡΡΠ°ΡΡ Π±Π΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ½ΡΠΌΠΈ), ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°ΠΊΠΆΠ΅ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΡΠ΅ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Β«Π£Π΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡΒ».
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π²Π°ΠΆΠ΄Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΡΠΎ Π²Π°ΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ Π±ΡΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ, ΡΠ΅Π»ΠΊΠ½ΡΠ² ΡΡΡΠ»ΠΊΡ Β«ΠΠΎΠΌΠΌΠΈΡΡΒ» Π½Π° ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π²Π°ΡΠ΅Π³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎ.
ΠΡΠΎ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π²Π°ΠΌ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠ»ΠΈΠ», Π²Π²Π΅ΡΡ Ρ (Π·Π°ΠΏΡΠΎΡ Π½Π° ΡΠ»ΠΈΡΠ½ΠΈΠ΅ β1).
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ Ρ
ΡΡ-ΠΊΠΎΠ΄ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΡΠΏΡΠ°Π²Π°.Π₯ΡΡ-ΠΊΠΎΠ΄ — ΡΡΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄Π»Ρ ΡΡΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. ΠΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ ΠΏΡΠΈ ΠΎΡΠΌΠ΅Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git revert
Π¨Π°Π³ 10. ΠΠΎΠ»ΡΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° GitHub ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π° ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ
ΠΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° GitHub Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½Π°ΡΠ΅, ΡΠ΅ΠΌ Π½Π° Π²Π°ΡΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π² ΡΠ²ΠΎΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅ ΠΈ ΡΠ»ΠΈΠ»Π° Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ Π½Π° Π²Π°ΡΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΌΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΠ»ΠΈ Π½Π° GitHub, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git pull origin master (ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ). Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ Π΄ΠΎ Β«git pullΒ».
ΠΠ΄Π΅ΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ, ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ½ΠΎΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git log, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π²ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ.
(ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ Π²Π΅ΡΠΊΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠ²Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout master.)
Π¨Π°Π³ 11. ΠΠΎΠ³ΡΠ΅ΠΉΡΠ΅ΡΡ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΌΠ΅ΡΠ·ΠΊΠΎΠΉ ΡΠ»Π°Π²Π΅
ΠΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ PR ΠΈ ΡΠ»ΠΈΠ»ΠΈ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ. ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ! ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ³ΡΡΠ·ΠΈΡΡΡΡ Π³Π»ΡΠ±ΠΆΠ΅, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΡΡΠΈΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°ΠΌΠΈ ΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ:
- https://training.github.com/
ΠΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠΈ Github ΠΏΠΎ git! Π£Π΄ΠΎΠ±Π½ΠΎ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. - https://learngitbranching.js.org/
Π‘ΠΌΡΡΠ΅Π½Ρ ΠΈΠ»ΠΈ Π·Π°ΠΈΠ½ΡΡΠΈΠ³ΠΎΠ²Π°Π½Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π²Π΅ΡΠΎΠΊ git? ΠΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ! ΠΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ Π³Π»ΡΠ±ΠΎΠΊΠΈΡ ΡΠ°ΡΡΠ΅ΠΉ git, Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈ ΡΠ°ΠΌΠ°Ρ ΠΌΠΎΡΠ½Π°Ρ.ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Π΅ΡΠ²Π΅ΠΉ Π΄Π°Π΅Ρ Π²Π°ΠΌ ΡΡΠΏΠ΅ΡΡΠΈΠ»Ρ git, ΠΈ ΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π°Π΅Ρ Π²Π°ΠΌ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ·ΡΡΠΈΡΡ Π²Π΅ΡΠΊΠΈ git Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΌ ΠΈ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ. - https://git-school.github.io/visualizing-git
ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ git. ΠΡΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° ΠΎΡΠΊΡΡΡΡΡ ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΡ, ΡΠ΅ΠΌ Π½Π° Learngitbranching.js.org - https://github.com/jlord/git-it-electron
ΠΠ°ΡΡΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΈΠ·ΡΡΠΈΡΡ git ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ. ΠΠ½ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΡ Π²Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ git Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ°. - https://github.com/Gazler/githug
ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΡΡ git-it, Githug — ΡΡΠΎ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΡΠ΅Π±Π½ΠΈΠΊ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π³ΠΎΠ»ΠΎΠ²ΠΎΠ»ΠΎΠΌΠΎΠΊ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ, ΡΡΠΎΠ±Ρ Π΄Π°ΡΡ Π²Π°ΠΌ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ git.
.
Π― ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ Π½Π°ΠΉΡΠΈ Π²ΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Π½Π°Π΄ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ Π³ΡΡΠΏΠΏΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΊΠ°ΠΊ ΠΌΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π·Π΄Π΅ΡΡ. ΠΠΎΠΏΡΠΎΡΠΈΡΠ΅ Π²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ ΠΏΠ°ΠΏΠΊΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² Π½Π΅Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ. ΠΠ°ΡΠ΅ΠΌ ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΡΠΎ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΡΠ΅ΠΏΠΎ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΠ°ΡΡ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈ, ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠ²Π°ΡΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ PR.ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ git blame ΠΈ git history Π½Π° GitHub, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ Π² ΡΠ°ΠΉΠ» ΠΈ ΠΊΡΠΎ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π½Π΅Ρ.
Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ git, ΡΠ΅ΠΌ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ Π²Π°ΠΌ … ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½ΠΈΠΌ. (Π― Π½Π΅ ΡΠ΄Π΅ΡΠΆΠ°Π»ΡΡ.)
* ΠΡΠΎΡ ΠΏΠΎΡΡ Π±ΡΠ» ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π² ΠΎΠΊΡΡΠ±ΡΠ΅ 2015 Π³ΠΎΠ΄Π° ΠΠ΅Π³Π°Π½ ΠΠ΅Π»ΡΡΠΎΠ½, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΠ°ΡΡΠΈΠΌ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠΌ-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠΌ Π² HubSpot. Π‘ ΡΠ΅Ρ ΠΏΠΎΡ ΠΎΠ½ Π±ΡΠ» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° HubSpot.
ΠΠ°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Ρ Π² ΡΠ°Π±ΠΎΡΠ΅ Π² Π³ΡΡΠΏΠΏΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ΅Π½ΠΈΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΡΡΡ ΠΈ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ? ΠΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ Π½Π°ΡΠΈΠΌΠΈ ΠΎΡΠΊΡΡΡΡΠΌΠΈ Π²Π°ΠΊΠ°Π½ΡΠΈΡΠΌΠΈ ΠΈ ΠΏΠΎΠ΄Π°ΠΉΡΠ΅ Π·Π°ΡΠ²ΠΊΡ.
Git — ArchWiki
- Β«Π― Π²ΡΡΡΠ΅ΡΠ°Π» Π»ΡΠ΄Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΡΠΌΠ°Π»ΠΈ, ΡΡΠΎ git — ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ GitHub. ΠΠ½ΠΈ ΠΎΡΠΈΠ±Π°Π»ΠΈΡΡ, git — ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ AURΒ». — ΠΠΈΠ½ΡΡ Π’.
Git — ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ (VCS), ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½Π°Ρ ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ, ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Π΅ΠΌ ΡΠ΄ΡΠ° Linux. Git ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² AUR, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΠΊΠΎΠ΄Ρ ΡΠ΄ΡΠ° Linux.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅Ρ git.ΠΠ»Ρ Π²Π΅ΡΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅Ρ git-git AUR . ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ°ΠΊΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠ°ΠΊ git svn , git gui ΠΈ gitk .
ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ
Π‘ΠΌ. Π’Π°ΠΊΠΆΠ΅ git GUI Clients.
- Giggle — ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ GTK Π΄Π»Ρ git.
- https://wiki.gnome.org/Apps/giggle/ || giggle
- GitAhead — ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ git, Π²ΠΊΠ»ΡΡΠ°Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ.
- https://gitahead.github.io/gitahead.com/ || gitahead AUR
- Git Cola — ΠΠ»Π΅Π³Π°Π½ΡΠ½ΡΠΉ ΠΈ ΠΌΠΎΡΠ½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Git, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° Python.
- https://git-cola.github.io/ || git-cola AUR
- Git Extensions — ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Git, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠΏΡΠ°Π²Π»ΡΡΡ Git Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
- https: // gitextensions.github.io/ || gitextensions AUR
- gitg — ΠΊΠ»ΠΈΠ΅Π½Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° GNOME Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² git.
- https://wiki.gnome.org/Apps/Gitg || gitg
- git-gui — ΠΏΠΎΡΡΠ°ΡΠΈΠ²Π½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Tcl / Tk Π΄Π»Ρ Git.
- https://git-scm.com/docs/git-gui || git + tk
- GitHub Desktop — ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ GitHub.
- https://github.com/desktop/desktop || github-desktop AUR github-desktop-bin AUR
- gitk — Π±ΡΠ°ΡΠ·Π΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Tcl / Tk.
- https://git-scm.com/docs/gitk || git + tk
- ΠΠΈΡΠ°ΡΠ° — ΠΊΠ»ΠΈΠ΅Π½Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Git.
- https://github.com/soramimi/Guitar || Π³ΠΈΡΠ°ΡΠ° AUR
- QGit — ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Git Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²Π΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
- https://github.com/tibirna/qgit || qgit
- RabbitVCS — ΠΠ°Π±ΠΎΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ Π²Π°ΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
- http://rabbitvcs.org/ || rabbitvcs AUR
- Sublime Merge — ΠΠ»ΠΈΠ΅Π½Ρ Git ΠΎΡ ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Π΅ΠΉ Sublime Text.
- https://www.sublimemerge.com/ || sublime-merge AUR
- Tig — ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ncurses Π΄Π»Ρ git.
- https://jonas.github.io/tig/ || tig
- ungit — ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ git Π±Π΅Π· ΡΡΠ΅ΡΠ±Π° Π΄Π»Ρ Π΅Π³ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΡΡΠΈ.
- https://github.com/FredrikNoren/ungit || nodejs-ungit AUR
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΈΠΌΡ ΠΈ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ:
$ git config --global user.name " John Doe " $ git config --global user.ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ° " [email protected] "
Π‘ΠΌ. ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ — ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Git.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΌ. Π ΡΠ°Π·Π΄Π΅Π»Π΅ # Π‘ΠΎΠ²Π΅ΡΡ ΠΈ ΠΏΡΠΈΠ΅ΠΌΡ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ .git
, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Ρ
ΡΠ°Π½ΠΈΡΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅. ΠΠ°ΡΠ°Π»ΠΎΠ³, ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ Π΄Π΅ΡΠ΅Π²Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π·Π°ΠΏΠΈΡΠ°Π½Ρ (Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ) Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.Git ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠ°Π½Π΅Π΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ Π΄Π΅ΡΠ΅Π²Π°.
Π‘ΠΌ. ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ — ΠΡΠ½ΠΎΠ²Ρ Git.
ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git
-
git init
, ΡΠΌ. Git-init (1)
- ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
-
git clone ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
, ΡΠΌ. Git-clone (1) (ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΡΡΠ½ΡΠ΅Ρ URL-Π°Π΄ΡΠ΅ΡΠ° Git)
ΠΠ°ΠΏΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
Π£ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ²
Git Π΅ΡΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Git, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Ρ
ΡΠ°Π½ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠΉΠ΄ΡΡ Π² Π²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ.ΠΠΎΡΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ», Π²Π°ΠΌ ΡΠ½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² ΠΈΠ½Π΄Π΅ΠΊΡ (ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ). ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π° git commit
ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠ°Π΄ΠΈΠΈ
- ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ Π΄Π΅ΡΠ΅Π²Π° Π² ΠΈΠ½Π΄Π΅ΠΊΡ
-
git add pathspec
, ΡΠΌ. Git-add (1)
- Π£Π΄Π°Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°
-
git reset pathspec
git-reset (1)
- ΠΠΎΠΊΠ°Π·Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ, Π½Π΅ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ
-
git status
, ΡΠΌ. git-status (1)
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Git ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ .gitignore
, ΡΠΌ. gitignore (5).
Git Π½Π΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡ
ΠΎΠ΄ΡΡΠ²Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ. ΠΠΎΠΌΠ°Π½Π΄Π° git mv
ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΈ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°:
$ mv -i foo bar $ git reset - foo $ git add bar
ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΠΎΠΌΠ°Π½Π΄Π° git commit
Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΠΎΡΡΠ°ΠΏΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΡΠΌ. Git-commit (1).
-
-m
— ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ Π΅Π³ΠΎ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -
-a
— Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Ρ (Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ) -
--amend
— ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ.
Π‘ΠΎΠ²Π΅Ρ: ΠΡΠ΅Π³Π΄Π° ΡΠΈΠΊΡΠΈΡΡΠΉΡΠ΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΡΡΠΎ ΠΈ Ρ ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΡΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ.
ΠΡΠ±ΠΎΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΈ
Git ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠΊΠ°Π·Π°ΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΈ, ΡΠΌ. Gitrevisions (7) ΠΈ Revision Selection.
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Git ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ². Π€ΠΈΠΊΡΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎ Π»ΡΠ±ΠΎΠΌΡ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ²:
- SHA-1 Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° (ΠΏΠ΅ΡΠ²ΡΡ 7 ΡΠΈΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ Π΅Π³ΠΎ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ)
- ΠΡΠ±Π°Ρ ΠΌΠ΅ΡΠΊΠ° ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΠΊ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ΅Π³Π°
- ΠΠ΅ΡΠΊΠ°
HEAD
Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΡΠ΅ΠΊΡΡΠ΅ΠΌΡ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Π½ΠΎΠΌΡ ΠΊΠΎΠΌΠΌΠΈΡΡ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π³ΠΎΠ»ΠΎΠ²Π° Π²Π΅ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ git checkout Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π² ΠΈΡΡΠΎΡΠΈΠΈ ΠΊ ΡΡΠ°ΡΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ) - ΠΡΠ±ΠΎΠΉ ΠΈΠ· Π²ΡΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ
ΠΏΠ»ΡΡ
~
Π΄Π»Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ.ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,HEAD ~
ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Π΄HEAD
ΠΈHEAD ~ 5
ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΏΡΡΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡΠΌ ΠΏΠ΅ΡΠ΅Π΄HEAD
.
ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ:
$ git diff HEAD HEAD ~ 3
ΠΈΠ»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ»ΠΎΡΠ°Π΄ΠΊΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΈ ΡΠ°Π±ΠΎΡΠΈΠΌ Π΄Π΅ΡΠ΅Π²ΠΎΠΌ:
$ git diff
ΠΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Π³Π΄Π΅ Β« -N Β» — ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²):
$ git log -p (-N)
ΠΡΠΌΠ΅Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ
ΠΡΠΈ, Π½Π°ΡΡΠ΄Ρ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΡΡΠ½ΡΡΡΡΡ ΠΏΡΠΈ ΠΎΡΠΌΠ΅Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΡ
ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ ΠΈΡΡΠΎΡΠΈΠΈ, ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ git commit --amend
ΠΈ git rebase
, ΡΠΌ., ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, rewriting-history. ΠΠ°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠΈ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ. ΠΠ»ΠΈ, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, Π·Π°ΡΠ°Π½Π΅Π΅ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠΎΡΠ΄ΠΈΠ½ΠΈΡΡΠΉΡΠ΅ ΡΡΠΎ.
ΠΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅
ΠΡΡ ΡΡΠ°ΡΡΡ ΠΈΠ»ΠΈ ΡΠ°Π·Π΄Π΅Π» Π½ΡΠΆΠ½ΠΎ ΡΠ°ΡΡΠΈΡΠΈΡΡ.
ΠΡΠΈΡΠΈΠ½Π°: ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ. (ΠΠ±ΡΡΠ΄ΠΈΡΡ Π² ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠΈ: Git #)
ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ΅ΡΡΠΈΡΡΡΡΡΡ Π² Π²Π΅ΡΠ²ΡΡ .ΠΠΎΠ³Π΄Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ, ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ½ΠΎΠ²Π° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π² Π²Π΅ΡΠ²Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (Π³Π»Π°Π²Π½ΡΡ).
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π²Π΅ΡΠΊΡ, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΡΠ½ΠΎ ΠΎΡΡΠ°ΠΆΠ°Π΅Ρ Π΅Π΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅:
$ git branch Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»Π° ΡΠΏΡΠ°Π²ΠΊΠΈ
Π‘ΠΏΠΈΡΠΎΠΊ Π²Π΅ΡΠ²Π΅ΠΉ:
$ Π²Π΅ΡΠΊΠ° git
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΡΠΈΠ»ΠΈΠ°Π»ΠΎΠ²:
$ git checkout Π²Π΅ΡΠΊΠ°
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅:
$ git checkout -b Π²Π΅ΡΠΊΠ°
Π‘Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ:
$ git checkout master $ git merge Π²Π΅ΡΠΊΠ°
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡ.Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Git Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΈ Π°Π½Π½ΠΎΡΠΈΡΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ Π΄Π΅ΡΠ΅Π²Π΅ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ². ΠΠ½Π½ΠΎΡΠ°ΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ git diff
. ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΡΡΠ΅ΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π°Π½Π½ΠΎΡΠ°ΡΠΈΠΉ ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ. Π‘ΠΌ. Π Π°Π·Π΄Π΅Π» # Π Π°Π±ΠΎΡΠ° ΡΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡΠΌΠΈ Π½ΠΈΠΆΠ΅.
ΠΠΎΠ³Π΄Π° Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅ Ρ Π²Π΅ΡΠΊΠΎΠΉ, ΡΠ΄Π°Π»ΠΈΡΠ΅ Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ:
$ git branch -d branch
Π‘ΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ
Π’ΠΈΠΏΠΈΡΠ½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Git:
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΡΠΉΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ.
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π²Π΅ΡΠΊΡ Π΄Π»Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ; Π·Π°ΡΠ΅ΠΌ Π·Π°ΡΠΈΠΊΡΠΈΡΡΠΉΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
- ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π΄Π»Ρ Π»ΡΡΡΠ΅ΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ / ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ.
- Π‘Π»ΠΈΡΠ½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ.
- (ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ) ΠΡΠΏΡΠ°Π²ΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ.
ΠΠ°ΠΏΡΠΎΡΡ Π½Π° Π²ΡΡΡΠΆΠΊΡ
ΠΠΎΡΠ»Π΅ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΡΠ°ΡΡΠ½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π°Π²ΡΠΎΡΠ° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ . ΠΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠΌ Π½Π° ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ .
Π’ΡΠ½ΡΡΡ:
$ git pull ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ master
ΠΠΎΠΌΠ°Π½Π΄Π° pull ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ , ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡΠΈΠ΅ , ΠΈ , ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΠΈΠ΅ .ΠΡΠ»ΠΈ Π΅ΡΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ Π°Π²ΡΠΎΡ Π²Π½Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠΎΡ ΠΆΠ΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΠΊ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ), ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΡ Π²ΡΡΡΠ½ΡΡ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ Π°Π²ΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ±ΡΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΡΠΈΡ fetch (ΠΈ ΠΎΠΏΡΠΈΡ log ΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ FETCH_HEAD
), ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π·Π°ΠΏΡΠΎΡΠ° Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΡΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ:
$ git fetch ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ master $ git log -p HEAD..FETCH_HEAD $ git merge ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠ΅ΡΠ°
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ»ΡΡΠΎΠ²
Remote — ΡΡΠΎ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².Π―ΡΠ»ΡΠΊ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΈ ΠΌΠ΅ΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².
Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠ»ΡΡ:
$ git remote Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΌΠ΅ΡΠΊΠ° ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ»ΡΡ:
$ git fetch ΠΌΠ΅ΡΠΊΠ°
ΠΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠ°ΡΡΠ΅ΡΠΎΠΌ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΠΌΠ°ΡΡΠ΅ΡΠΎΠΌ:
$ git log -p master .. ΠΌΠ΅ΡΠΊΠ° / master
ΠΡΠΎΡΠΌΠΎΡΡ ΠΏΡΠ»ΡΡΠΎΠ² Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ:
$ git ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ -v
ΠΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ·Π»Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΌ Π΄Π»Ρ ΡΠΎΡΠΊΠ° (ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°), ΠΎΠ½ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ Π²ΠΎΡΡ ΠΎΠ΄ΡΡΠΈΠΉ .
ΠΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠ΅ Π°Π²ΡΠΎΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΠΏΡΠ°Π²Π°, Π²Π½Π΅ΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ:
$ git push ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠ°
ΠΠΎΠ³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ git clone , ΠΎΠ½ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π°Π΅Ρ Π΅ΠΌΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΠΈΠΌΡ origin
.
ΠΡΠ°ΠΊ, ΡΡΠΎ ΠΎΠ±ΡΡΠ½ΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΠ°ΠΊ:
$ git push origin master
ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΡΠΈΡ -u
( --set-upstream
), ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π· ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎ git push
.
Π Π°Π±ΠΎΡΠ° ΡΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡΠΌΠΈ
Π‘ΠΌ. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ Π² ΠΊΠ½ΠΈΠ³Π΅ Git Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ. Π‘Π»ΠΈΡΠ½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΠΌΡ. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ ΡΠ»ΠΈΡΠ½ΠΈΡ, ΠΎΠ±ΡΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ --abort
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, git merge --abort
ΠΈΠ»ΠΈ git pull --abort
).
ΠΡΡΠΎΡΠΈΡ ΠΈ Π²Π΅ΡΡΠΈΡ
ΠΠΎΠΈΡΠΊ Π² ΠΈΡΡΠΎΡΠΈΠΈ
git log
ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡ ΠΈΡΡΠΎΡΠΈΡ Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΠΎΠΉ ΡΡΠΌΠΌΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, Π°Π²ΡΠΎΡΠΎΠΌ, Π΄Π°ΡΠΎΠΉ ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ.ΠΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ° — ΡΡΠΎ Β«ΠΈΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°Β» ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ 40-ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ Ρ
ΡΡ SHA-1.
ΠΠ»Ρ ΠΈΡΡΠΎΡΠΈΠΈ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ (Π³Π΄Π΅ Β« ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ° Β» ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠ΅ΡΠ΅Π½Π°, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½Π°):
$ git show ( ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ° )
ΠΡΠΊΠ°ΡΡ ΡΠ°Π±Π»ΠΎΠ½ Π² ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°ΠΉΠ»Π°Ρ :
$ git grep ΡΠ°Π±Π»ΠΎΠ½
ΠΡΠΊΠ°ΡΡ Π² ΡΠ°ΠΉΠ»Π°Ρ
.c
ΠΈ .h
:
$ git grep ΡΠ°Π±Π»ΠΎΠ½ - '*.[ch] '
ΠΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ°
Π’Π΅Π³ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ:
$ git tag 2.14 ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ°
Π’Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΡΠΏΡΡΠΊΠ° / ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ, Π½ΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±Π°Ρ ΡΡΡΠΎΠΊΠ°. ΠΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π°Π½Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ΅Π³ΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Git.
ΠΡΠΌΠ΅ΡΡΡΠ΅ ΡΠ΅ΠΊΡΡΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ:
$ git tag -a 2.14 -m "ΠΠ΅ΡΡΠΈΡ 2.14"
Π‘ΠΏΠΈΡΠΎΠΊ ΡΠ΅Π³ΠΎΠ²:
$ git tag -l
Π£Π΄Π°Π»ΠΈΡΡ ΡΠ΅Π³:
$ git tag -d 2.08
ΠΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅Π³ΠΈ:
$ git push - ΡΠ΅Π³ΠΈ
ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ²Π°
ΠΠ΅ΡΠ΅Π΄ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ Π·Π°ΠΏΡΠΎΡΠ° Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ / ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΡΠΈΠΈ git rebase --interactive
:
$ git rebase -i ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ°
ΠΡΠΊΡΠΎΠ΅ΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΡΠΎ ΡΠ²ΠΎΠ΄ΠΊΠΎΠΉ Π²ΡΠ΅Ρ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅; Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ°ΠΌΡΡ Π½ΠΎΠ²ΡΡ ( HEAD
) ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, Π½ΠΎ ΠΈΡΠΊΠ»ΡΡΠ°Ρ, ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΡ ΡΡΠΌΠΌΡ
.ΠΠ»ΠΈ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π½ΠΎΡΠ°ΡΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, HEAD ~ 3
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°:
pick d146cc7 Mountpoint test. pick 4f47712 ΠΠ±ΡΡΡΠ½ΠΈΡΠ΅ ΠΎΠΏΡΠΈΡ -o Π² readme. pick 8a4d479 ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ.
Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ, ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ:
-
pick
— ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΡΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΊΠ°ΠΊ Π΅ΡΡΡ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ). -
edit
— Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈ / ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. -
reword
— Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. -
squash
— Π‘Π»ΠΈΡΠ½ΠΈΠ΅ / ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠ΅ΠΉ. -
fixup
— Π‘Π»ΠΈΡΠ½ΠΈΠ΅ / ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ, ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°Ρ Π΅Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
ΠΠΎΠΌΠΌΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Ρ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Ρ ΠΈΠ· ΠΈΡΡΠΎΡΠΈΠΈ (Π½ΠΎ Π±ΡΠ΄ΡΡΠ΅ ΠΎΡΠ΅Π½Ρ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ Ρ ΡΡΠΈΠΌ). ΠΠΎΡΠ»Π΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° Git Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ; Π΅ΡΠ»ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ»ΠΈΡΠ½ΠΈΡ, ΠΈΡΠΏΡΠ°Π²ΡΡΠ΅ ΠΈΡ
ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git rebase --continue
ΠΈΠ»ΠΈ Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ Π½Π°Π·Π°Π΄ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git rebase --abort
.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π‘ΠΊΠ²ΠΎΡΠΈΠ½Π³ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΡΠΎ Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π»ΡΠ΄ΡΠΌΠΈ.
Π‘ΠΎΠ²Π΅ΡΡ ΠΈ Ρ ΠΈΡΡΠΎΡΡΠΈ
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ git-config
Git ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΠ²ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈΠ· ΡΠ΅ΡΡΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ INI-ΡΠΈΠΏΠ°:
-
/ etc / gitconfig
Π΄Π»Ρ ΠΎΠ±ΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -
~ / .gitconfig
ΠΈ~ / .config / git / config
(Ρ Π²Π΅ΡΡΠΈΠΈ 1.7.12) Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ -
.git / config
Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎΠΉ Π΄Π»Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π°ΠΏΡΡΠΌΡΡ, Π½ΠΎ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ git config , ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ Π½ΠΈΠΆΠ΅.
Π‘ΠΏΠΈΡΠΎΠΊ ΡΠ΅ΠΊΡΡΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ :
$ git config {--local, - global, - system} --list
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Ρ vim Π½Π° nano:
$ git config --global core.editor "nano -w"
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ:
$ git config --global push.ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠΎΡΡΠΎΠΉ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΄ΡΡΠ³ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ git difftool (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ meld ):
$ git config --global diff.tool vimdiff
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π git-config (1) ΠΈ Git Configuration.
Π‘ΠΎΠ±Π»ΡΠ΄Π°ΠΉΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΡΠΈΠΊΠ΅ΡΠ°
- Π Π°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠ°ΡΡΠΈΡ Π² ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, ΠΏΡΠΎΡΡΠΈΡΠ΅ ΠΈ ΠΏΠΎΠΉΠΌΠΈΡΠ΅ Π΅Π³ΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ΅Π·ΠΌΠ΅ΡΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ Π²Π°ΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΊΠΎΠ΄. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΠΏΠΎΡΡ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΠΏΡΠ°Π²Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ Π½Π° ΠΊΠΎΠ΄.
- ΠΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΎ ΡΠΎΠΌ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΡΠΎΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π² Π½Π΅Π³ΠΎ Π²ΠΏΠΈΡΠ°ΡΡΡΡ. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΏΡΠΎΡΡΠΈΡΠ΅ Π»ΡΠ±ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ Π΄Π°ΠΆΠ΅ ΠΆΡΡΠ½Π°Π» ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
- ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Π½Π° ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΠΏΠ°ΡΡΠ° Π΄Π΅ΡΠΆΠΈΡΠ΅ Π΅Π³ΠΎ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΌ ΠΈ Ρ ΠΎΡΠΎΡΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ; ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡΠΈΠΌ ΠΏΠΎΠ½ΡΡΡ Π²Π°ΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ΅ΡΠΈΡΡ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π»ΠΈ ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ Π²Π°Ρ Π²Π½Π΅ΡΡΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ.
- ΠΡΠ»ΠΈ Π²ΠΊΠ»Π°Π΄ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½, Π½Π΅ ΡΠ°ΡΡΡΡΠ°ΠΈΠ²Π°ΠΉΡΠ΅ΡΡ, Π² ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ², ΡΡΠΎ ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ.ΠΡΠ»ΠΈ ΡΡΠΎ Π²Π°ΠΆΠ½ΠΎ, ΠΎΠ±ΡΡΠ΄ΠΈΡΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Π² ΠΏΠΎΠ»ΡΠ·Ρ Π²ΠΊΠ»Π°Π΄Π° ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ½Π΅Π΅ ΠΈ ΡΠ΅ΡΠΏΠ΅Π»ΠΈΠ²Π΅Π΅: ΠΏΡΠΈ ΡΠ°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π΅ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅.
Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ Git.
ΠΡΠΎΡΠΎΠΊΠΎΠ» ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΌΡΠ»ΡΡΠΈΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ SSH, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΡΠ΅, Git over SSH ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ HTTPS. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, AUR) ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· SSH.ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Git ΡΠ΅ΡΠ΅Π· SSH Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π½Π° AUR.
~ / .gitconfig
[url "ssh: //[email protected]/"] Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎOf = https://aur.archlinux.org/ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎOf = http://aur.archlinux.org/ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎOf = git: //aur.archlinux.org/
ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Bash
Π§ΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Bash, ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ /usr/share/git/completion/git-completion.bash
Π² ΡΠ°ΠΉΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° Bash. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ bash-Completion.
ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ° Git
ΠΠ°ΠΊΠ΅Ρ Git ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠ΅ΠΌ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΡ. Π§ΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΅Π³ΠΎ, ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ /usr/share/git/completion/git-prompt.sh
ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ % s
:
- ΠΠ»Ρ Bash:
PS1 = '[\ u @ \ h \ W $ (__ git_ps1 "(% s)")] \ $'
- ΠΠ»Ρ zsh:
setopt PROMPT_SUBST; PS1 = '[% n @% m% c $ (__ git_ps1 "(% s)")] \ $'
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½Π°, ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΠΌ. Π ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Bash / ΠΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΡ # ΠΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄.Π‘ΠΌ. Π Π°Π·Π΄Π΅Π» ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ # Π€Π°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git Π² ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½Ρ Π² ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ΅:
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ | ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ |
---|---|
GIT_PS1_SHOWDIRTYSTATE | + Π΄Π»Ρ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, * Π΄Π»Ρ Π½Π΅ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ. |
GIT_PS1_SHOWSTASHSTATE | $, Π΅ΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ ΠΏΡΠΈΠΏΡΡΡΠ°Π½ΠΎ. |
GIT_PS1_SHOWUNTRACKEDFILES | % Π΅ΡΠ»ΠΈ Π΅ΡΡΡ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ. |
GIT_PS1_SHOWUPSTREAM | <,>, <> ΡΠ·Π°Π΄ΠΈ, Π²ΠΏΠ΅ΡΠ΅Π΄ΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΎΡΠ»ΠΈ Π²Π²Π΅ΡΡ ΠΏΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ. |
GIT_PS1_SHOWUPSTREAM
Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π° auto
, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΡΡΡΠΏΠΈΠ»ΠΈ Π² ΡΠΈΠ»Ρ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ, ΡΡΠΎ $ (__ git_ps1)
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ((Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ))
, ΡΠΎΠ³Π΄Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ .git
Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Git Π½Π΅ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π΅Ρ Π΅Π³ΠΎ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΡΠΈΠ±ΠΎΡΠ½ΠΎ ΠΏΡΠΈΠ½ΡΠ»ΠΈ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Git ΠΊΠ°ΠΊ ~ / .git / config
Π²ΠΌΠ΅ΡΡΠΎ ~ / .gitconfig
.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ git ΠΈΠ· AUR, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ bash-git-prompt AUR ΠΈΠ»ΠΈ gittify AUR .
ΠΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΠ±ΡΠ΅ΠΌΠ΅ ΠΏΡΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ:
$ git diff --stat
git log Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π·Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ:
$ git log --graph --oneline --decorate
git log ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ Π³ΡΠ°ΡΠΈΠΊΠ° (Ρ.Π΅.
ΠΡΠ»ΠΈ Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ, Π΅Π³ΠΎ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ:
$ git ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ set-url git @ Π°Π΄ΡΠ΅Ρ : ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ / ΡΠ΅ΠΏΠΎ .git
ΠΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ (ΠΏΠΎΠ΄ΠΏΠΈΡΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΈ Π°Π΄ΡΠ΅ΡΠ° ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΊ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ²):
$ git commit -s
Signed-off-by Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΊ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌ (ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ git format-patch commit
):
$ git config --local format.ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²Π΅ΡΠ½ΠΎ
ΠΠ°ΡΠΈΠΊΡΠΈΡΡΠΉΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ°ΡΡΠΈ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ. ΠΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π΅ΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ°Π·Π±ΠΈΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²:
$ git add -p
ΠΠΎΠ΄ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
Git ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ ΡΠ΅Π³ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ GnuPG, ΡΠΌ. ΠΠΎΠ΄ΠΏΠΈΡΡ Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΊΠ»ΡΡΠΈΡ pinentry Π΄Π»Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ GPG, ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ export GPG_TTY = $ (tty)
(Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ pinentry-tty), Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π³ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ΠΈΡ Π½Π΅ ΡΠ΄Π°ΡΡΡΡ, Π΅ΡΠ»ΠΈ GPG Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ (ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΡΡΡΡ).
Π§ΡΠΎΠ±Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ Git Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²:
$ git config --global commit.gpgSign true
Π Π°Π±ΠΎΡΠ° Ρ Π½Π΅ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ
ΠΠ½ΠΎΠ³Π΄Π° ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡΠΈΠΉ ΠΏΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΄Π΅Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ Π²Π΅ΡΠΊΠΎΠΉ. ΠΡΠΈ Π²Π΅ΡΠ²ΠΈ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ devel
ΠΈΠ»ΠΈ test
. ΠΠ°ΡΠ½ΠΈΡΠ΅ Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π§ΡΠΎΠ±Ρ Π²Π²Π΅ΡΡΠΈ Π΄ΡΡΠ³ΡΡ Π²Π΅ΡΠΊΡ ΡΡΠ΄ΠΎΠΌ Ρ master ( git clone ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ master Π²Π΅ΡΠΊΡ, Π½ΠΎ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΡΠ΅ Π΅ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ, git branch -a
Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ):
$ git checkout -b Π²Π΅ΡΠΊΠ° origin / Π²Π΅ΡΠΊΠ°
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΠΌ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ; ΠΎΠ΄Π½Π°ΠΊΠΎ, ΡΡΠΎΠ±Ρ Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°Π»ΠΎΡΡ, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠ±Π°:
$ git pull - Π²ΡΠ΅ $ git push - Π²ΡΠ΅
ΠΠ΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½Π°Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΡΡΡΠ»ΠΊΠΈ
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΡΡΡΠ»ΠΊΠΈ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ: perl-authen-sasl, perl-net-smtp-ssl ΠΈ perl-mime-tools.
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ ΡΠ²ΠΎΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ, ΡΠΌ. # ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ.
ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ:
$ git config --global sendemail.smtpserver smtp.example.com $ git config --global sendemail.smtpserverport 587 $ git config --global sendemail.smtpencryption tls $ git config --global sendemail.smtpuser [email protected]
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠ°ΡΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΡΡΡΠ»ΠΊΠΈ (ΡΠΌ. Π’Π°ΠΊΠΆΠ΅ OpenEmbedded: ΠΠ°ΠΊ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠ°ΡΡ Π² OpenEmbedded # ΠΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΠ°ΡΡΠ΅ΠΉ):
$ git add ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π° $ git commit -s $ git send-email --to = openembedded-core @ lists.openembedded.org --confirm = Π²ΡΠ΅Π³Π΄Π° -M -1
ΠΠΎΠ³Π΄Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΡΠ΅ΠΏΠΎ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅
ΠΡΠ° ΡΡΠ°ΡΡΡ ΠΈΠ»ΠΈ ΡΠ°Π·Π΄Π΅Π» ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠ·ΡΠΊΠ°, ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° Π²ΠΈΠΊΠΈ ΠΈΠ»ΠΈ ΡΡΠΈΠ»Ρ. Π‘ΠΌ. Π‘ΠΏΡΠ°Π²ΠΊΡ: Π‘ΡΠΈΠ»Ρ.
ΠΡΠΈΡΠΈΠ½Π°: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π½Π΅ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ, ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ, HTML-ΡΠ΅Π³ΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² ΠΊΠΎΠ΄Π° ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΠΆΠ²ΠΈΠΊΠΈ-ΡΡΡΠ»ΠΊΠΈ. (ΠΠ±ΡΡΠ΄ΠΈΡΡ Π² ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠΈ: Git #)
ΠΠΎΠ³Π΄Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΡΠ΅ΠΏΠΎ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΡΠΈΠΌΠ΅ΡΡ Π²Π·ΡΡΡ ΠΈΠ· ΡΠ΄ΡΠ° Linux.
Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±: ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΡΠ΅ΠΏΠΎ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²Π΅ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΠΎ
$ git clone git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: git clone
Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ²ΠΎΠ΅ ΡΠ΅ΠΏΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git pull
.
Π§Π°ΡΡΠΈΡΠ½Π°Ρ Π²ΡΠ±ΠΎΡΠΊΠ°
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΏΠΎΡΠ»Π΅ Π²Π΅ΡΡΠΈΠΈ 4.14, ΡΡΠΎΠ±Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ ΠΏΠΎΠΏΠΎΠ»Π°ΠΌ. ΠΠ°ΡΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅:
$ git clone --shallow-exclude v4.13 git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git # ΠΡ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ v4.14 ΠΈ Π½ΠΎΠ²Π΅Π΅, Π½ΠΎ Π½Π΅ v4.13 ΠΈ ΡΡΠ°ΡΡΠ΅.
ΠΠ»ΠΈ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ, Π²Π°ΠΌ Π½ΡΠΆΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ½ΠΈΠΌΠΎΠΊ, ΠΈΠ³Π½ΠΎΡΠΈΡΡΡ Π²ΡΡ ΠΈΡΡΠΎΡΠΈΡ. (ΠΡΠ»ΠΈ tarball Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΈ Π΅Π³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π΅Π³ΠΎ. ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ git ΡΡΠΎΠΈΡ Π΄ΠΎΡΠΎΠΆΠ΅.) ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
$ git clone --depth 1 git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
ΠΠΎΠ·ΠΆΠ΅ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
$ git fetch --tags --shallow-exclude v4.1 # ΠΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΏΠΎΡΠ»Π΅ v4.1. $ git fetch --tags --shallow-Ρ 01.01.2016
ΠΠ΅Π· --tags
ΡΠ΅Π³ΠΈ Π½Π΅ Π±ΡΠ΄ΡΡ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Ρ.
ΠΠΎΠ»ΡΡΠΈΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»Π΅Π½ΠΈΡ
ΠΠ°ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΠΏΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ, Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΠ΄ΡΠΎ, ΡΠΎ Π΅ΡΡΡ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° . ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²Π°ΠΌ Π½ΡΠΆΠ½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ LTS , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ 4.14. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΎ:
$ git ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ Π²Π΅ΡΠΎΠΊ --add origin linux-4.17.y $ git fetch $ git branch --track linux-4.17.y ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ / linux-4.17.y
ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΡΡΠΎΠΊΠ° Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ, Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠ½Π° Π²Π°ΠΌ Π½ΡΠΆΠ½Π°.
(Π§ΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ ΠΈΠΌΡ Π½ΡΠΆΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ, ΠΈΠ·Π²ΠΈΠ½ΠΈΡΠ΅, ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π° Π½Π΅Ρ.