Git ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° (Π΄Π»Ρ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ²) / Π₯Π°Π±Ρ
Π‘ΠΎΠ°Π²ΡΠΎΡ ΡΡΠ°ΡΡΠΈ: RicardoMilosΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΡΠΈΠ²Π΅Ρ! ΠΡΠ»ΠΈ ΡΡ ΡΡΠ΄Π° Π·Π°ΡΠ΅Π», Π·Π½Π°ΡΠΈΡ ΡΠ΅Π±Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π» Π²ΠΎΠΏΡΠΎΡ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅. ΠΡΠ»ΠΈ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ ΡΡ ΡΠ°Π±ΠΎΡΠ°Π» ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠ»ΠΎ, ΡΠΎ ΡΠ΅Π±Π΅, Π½Π°Π²Π΅ΡΠ½ΠΎ, ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΎΡΠ΅, Π²Π΅Π΄Ρ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠΊ ΠΈ Π·Π½Π°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ Ρ ΡΠ°Π±ΠΎΡΠΎΠΉ. ΠΠΎ Π½Π΅ Π²ΡΠ΅ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ. Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠΌΡΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ°ΠΊΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π²Π΅Π΄Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
GIT
ΠΠ°Π²Π΅ΡΠ½ΡΠΊΠ° Π²Π°ΠΌ Π·Π½Π°ΠΊΠΎΠΌΠ° ΡΠ°ΠΊΠ°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ:
Π Π΅ΡΡ ΠΈΠ΄Π΅Ρ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ Π²Π΅ΡΡΠΈΠΎΠ½Π½ΠΎΡΡΠΈ. ΠΠ±ΡΡΠ½ΠΎ ΡΠ°ΠΊΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Ρ ΡΠ²ΠΎΡΡΠ΅ΡΠΊΠΈΡ Π»ΡΠ΄Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»ΡΠ²Π°ΡΡ ΠΈ Π΄ΠΎΠ±ΠΈΠ²Π°ΡΡΡΡ ΠΈΠ΄Π΅Π°Π»Π°. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΎΠΆΠ΅ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π²ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ°Π·Π°. ΠΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ ΡΠΈΡΡΠ°ΡΠΈΡ: Π²Ρ ΠΏΡΠΈΠ΄ΡΠΌΠ°Π»ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»Π°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π» ΡΡΡΡ-ΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅. ΠΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π΅ΡΠ΅, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΠ΅, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΠ΅, ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π²ΠΎΠΎΠ±ΡΠ΅. ΠΡΠ΅ ΡΠ»ΠΎΠΌΠ°Π»ΠΎΡΡ.
Π ΡΡΡ Π²Ρ ΠΎΡΠΎΠ·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Z Π½Π° Π²Π°ΡΠ΅ΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ΅ ΡΠ»ΠΎΠΌΠ°Π»Π°ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Ρ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΡΠΏΠ°ΠΌΠΈΡΡ ctrl+z. Π ΠΏΠΎΡΡΠ²Π΅ ΡΡΠΎΡΡΠΈ Π²Ρ ΠΏΡΠΎΠ±ΠΈΠ²Π°Π΅ΡΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡ ΡΠ²ΠΎΠ΅ΠΉ Π½Π°ΠΊΠ°ΡΠ°Π½Π½ΠΎΠΉ ΠΏΡΠ°Π²ΠΎΠΉ ΡΡΠΊΠΎΠΉ. ΠΠ΅ΡΠ΅ΡΠΎΠΌ Π²Ρ ΠΏΠ»Π°ΡΠ΅ΡΠ΅, ΡΠΊΡΡΠ°Π²ΡΠΈΡΡ Π² ΠΏΠ»Π΅Π΄ΠΈΠΊ, ΠΈ Π΄ΡΠΌΠ°Π΅ΡΠ΅ ΠΎ ΡΡΠΆΠ΅Π»ΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ².
ΠΠ»Π°ΡΠ΅Π²Π½Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΡβ¦ Π ΡΡΠΎΠ±Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΠ»ΠΎ, Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π²Π΅ΡΡΠΈΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ β Π»ΡΠ΄ΠΈ ΡΠΌΠ½ΡΠ΅, ΠΈ ΠΎΠ½ΠΈ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΡΡΠΎ Ρ ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΊΡΡΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π½Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎΡΠ½ΠΎ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΡΡΠΎ-ΡΠΎ, ΡΡΠΎ ΠΎΠ±Π»Π΅Π³ΡΠΈΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΉ ΠΈ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΠ΅ΡΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²Π΅ΡΡΠΈΠΎΠ½Π½ΠΎΡΡΠΈ.
Π ΡΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ ΠΈΠ³ΡΠ°ΠΌΠΈ. ΠΠΎΡΡΠΈ Π²ΠΎ Π²ΡΠ΅Ρ
ΠΠΠ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
Π΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΠΊ Π½Π°Π³Π»ΡΠ΄Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΈΠ³ΡΡ Papers Please.
ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
Version Control System (VCS) β ΡΠΈΡΡΠ΅ΠΌΠ°, Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ°ΠΊ ΡΡΠΎΠ±Ρ Π±ΡΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ·ΠΆΠ΅ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.
ΠΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π‘ΠΠ:
- ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅
- Π¦Π΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅
- Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅
Π‘ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ Π‘ΠΠ ΠΌΡ ΡΠΆΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ (ΡΡΠΎ ΡΠ΅ ΡΠ°ΠΌΡΠ΅ ΠΊΡΡΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²)
Π¦Π΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π‘ΠΠ
- ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ
Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΏΠΎΠ΄ Π²Π΅ΡΡΠΈΠΎΠ½Π½ΡΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ - ΡΡΠ΄ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²
ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠΏΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΡΠΈΠΌΠ΅ΡΡ:
Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π‘ΠΠ
- ΠΠ»ΠΈΠ΅Π½ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΊΠΎΠΏΠΈΡΡΡΡ Π²Π΅ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
- Π¦Π΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ
- Π‘ΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ
- Π‘ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ
- Π‘ Π»ΡΠ±ΡΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ
ΠΡΠΈΠΌΠ΅ΡΡ:
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ½Π° Π‘ΠΠ
- Π₯ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ°
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Β«Π½Π° Π»ΡΠ±ΡΡ ΡΡΠ°Π΄ΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Β»
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²Π΅ΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ
GIT
Git β ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
ΠΠ²ΡΠΎΡ: ΠΠΈΠ½ΡΡ Π’ΠΎΡΠ²Π°Π»ΡΠ΄Ρ
2005 β ΠΏΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°:
Windows/macOS: ΡΡΡΠ»ΠΊΠ°
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ:
- GNU/Linux
- Android
- Wine
- Chromium
- jQuery
- PHP
- MediaWiki
- Qt
ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ (repository, repo) β ΠΌΠ΅ΡΡΠΎ, Π³Π΄Π΅ Π‘ΠΠ Ρ ΡΠ°Π½ΠΈΡ ΡΠ²ΠΎΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ°
Π Π°Π±ΠΎΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ (working directory) β ΠΈΠ·Π²Π»Π΅ΡΡΠ½Π½Π°Ρ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΊΠΎΠΏΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² (staged area) β ΡΠ»ΡΠΆΠ΅Π±Π½ΡΠΉ ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΎΠΉΡΠΈ Π² ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΠ΅Π²ΠΈΠ·ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΎΠΌΠΌΠΈΡ (commit) β ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ GIT
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
git config --global user.name "Your Name"
git config --global user.email [email protected]
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π² ΡΠΊΡΡΡΡΠΉ ΡΠ°ΠΉΠ» .gitconfig (Π² Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ)
[user]
name = John Doe
email = [email protected]
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
mkdir first_git_repo
cd first_git_repo
git init
Π‘ΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ°
- ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ
ΡΠ°ΠΉΠ» ΡΠΆΠ΅ Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ - ΠΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ
ΡΠ°ΠΉΠ» ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΏΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΎΡ ΡΠ²ΠΎΠ΅Π³ΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ - ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠΉ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠ°Π½Π΅Ρ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ (ΡΡΠΎΡ ΡΠ°ΠΉΠ» ΠΏΠΎΠΏΠ°Π΄Π΅Ρ Π² ΡΡΡ ΡΠ΅Π²ΠΈΠ·ΠΈΡ)
Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠ΄ΠΎΠΌ
- ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠ΅: ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ / ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ / ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²
Π Π»ΡΠ±ΠΎΠΉ IDE - ΠΡΠΎΡΠΌΠΎΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ
git status
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΠΈΠ½Π΄Π΅ΠΊΡ
(ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Staged)
git add ΠΈΠΌΠ΅Π½Π°_ΡΠ°ΠΉΠ»ΠΎΠ²_ΡΠ΅ΡΠ΅Π·_ΠΏΡΠΎΠ±Π΅Π»
- Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ (ΠΈΠ· Staged Π² Repo)
git commit -m "ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ"
Π‘ΡΠΌΠΌΠΈΡΡΠ΅ΠΌ
Π Π°Π±ΠΎΡΠ° Ρ Π‘ΠΠ
Π§ΡΠΎ Ρ ΡΠ°Π½ΠΈΡΡ?
[+] ΠΡΠ΅ ΡΠ΅ΡΡΡΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
[+] Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°
[-] Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² IDE
[-] ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ²
[-] ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°
git rm ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°
ΠΠΎΠΌΠΌΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠΎΠ³Π΄Π° Π΄Π΅Π»Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡ?
- ΠΠΎΠ³Π΄Π° Π·Π°Π²Π΅ΡΡΠΈΠ» ΠΌΠ°Π»Π΅Π½ΡΡΡΡ Π·Π°Π΄Π°ΡΠΊΡ
- ΠΡΠ»ΠΈ Π·Π°Π΄Π°ΡΠΊΠ° Π±ΠΎΠ»ΡΡΠ°Ρ β Π΄Π΅Π»ΠΈΠΌ Π½Π° Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°ΡΡΠΈ
- ΠΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ!
ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ
git log
git log --graph
ΠΠΎΠΌΠ΅Ρ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ = SHA-1 Ρ ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅Π²ΠΈΠ·ΠΈΡ
git checkout sha1_hash
git checkout ΠΏΠ΅ΡΠ²ΡΠ΅_8_ΡΠΈΡΡ_sha1
ΠΠ΅ΡΠΊΠΈ
ΠΠ΅ΡΠΊΠ° (Π°Π½Π³Π». branch) β ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π΅Π΄ΡΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π°
ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠΊΠ° β master
ΠΠ΅ΡΠΊΠΈ Π² GIT
ΠΠΎΠΊΠ°Π·Π°ΡΡ Π²ΡΠ΅ Π²Π΅ΡΠΊΠΈ, ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠ°ΡΠΈΠΈ
git branch
Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ
git branch ΠΈΠΌΡ
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π²Π΅ΡΠΊΡ
git checkout ΠΈΠΌΡ
ΠΠ° ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π½Π΅ΡΠΎΡ
ΡΠ°Π½ΡΠ½Π½ΡΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π½Π΅Ρ
git checkout -b ΠΈΠΌΡ
Π‘Π»ΠΈΡΠ½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ (Π°Π½Π³Π». merge) β ΠΏΡΠΎΡΠ΅ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²) ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² Π΄ΡΡΠ³ΡΡ:
b1 β Π²Π΅ΡΠΊΠ°, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
b2 β Π²Π΅ΡΠΊΠ° ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
git checkout b1
git merge b2
ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ
ΠΠΊΠΎΠ½Π½ΡΠ΅ ΡΡΠΈΠ»ΠΈΡΡ:
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ
Π£Π΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ
git branch βd ΠΈΠΌΡ_Π²Π΅ΡΠΊΠΈ
Π£ΠΠΠΠΠ’Π¬ Π²Π΅ΡΠΊΡ
git branch βD ΠΈΠΌΡ_Π²Π΅ΡΠΊΠΈ
Π ΡΠΎΡΠ½Π΅Π΅, ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ, Π½Π΅ Π΄ΠΎΠΆΠΈΠ΄Π°ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² master
ΠΡΡΠ΅Ρ Π½Π΅ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΠ»ΠΈ Β«ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π΄ΡΡΠ³ΡΡ Π²Π΅ΡΠΊΡ, Π° ΠΊΠΎΠΌΠΌΠΈΡ Π΄Π΅Π»Π°ΡΡ ΡΠ°Π½ΠΎ?Β»
ΠΠ°ΠΏΠΈΡΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ Π±ΡΡΠ΅Ρ
git stash
ΠΠ·Π²Π»Π΅ΡΡ ΠΈΠ· Π±ΡΡΠ΅ΡΠ° ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
git stash pop
ΠΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ:
git-scm.com/book/ru/v2
githowto.com/ru
ru.wikipedia.org/wiki/Π‘ΠΈΡΡΠ΅ΠΌΠ°_ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ_Π²Π΅ΡΡΠΈΡΠΌΠΈ
ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ ΡΡ Π΄ΠΎΠ±ΡΠ°Π»ΡΡ Π΄ΠΎ ΡΡΠΎΠΉ ΡΡΡΠΎΡΠΊΠΈ, ΡΠΎ Π·Π½Π°ΡΠΈΡ ΡΡ Ρ ΠΎΡΡ Π±Ρ ΡΡΡΡ-ΡΡΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΡΡ Ρ gitβΠΎΠΌ (ΠΎΡΠ΅Π½Ρ Π½Π° ΡΡΠΎ Π½Π°Π΄Π΅ΡΡΡ). ΠΠΎ ΡΡΠΎ ΠΆΠ΅ Π½Π°ΡΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ? ΠΠ°Π²Π°ΠΉ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ ΠΏΠΎΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅.
ΠΠ΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠΌΠΎΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π·Π°Π΄Π°ΡΠΊΠ°:
ΠΠ°Π½ΠΎ:
- N ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²
- Π Π°Π±ΠΎΡΠΈΠ΅ ΠΌΠ΅ΡΡΠ°
- Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ (Π’Π)
- ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ
ΠΠΎΠΏΡΠΎΡ:
- ΠΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π΅ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ°Π½ΠΈΡΠ°ΡΠΎΠ²?
ΠΡΠ²Π΅Ρ:
- Π‘Π»Π°ΠΆΠ΅Π½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈ ΡΠΏΠΎΡΠ½ΡΠΉ ΡΡΡΠ΄
Π₯ΠΌ, Π° ΡΡΠΎ ΠΆΠ΅ ΡΠ°ΠΊΠΎΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°? Π§ΡΠΎ ΠΎΠ½Π° ΠΈΠ· ΡΠ΅Π±Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ?
ΠΠΎΠΌΠ°Π½Π΄Π° β ΡΡΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π»ΡΠ΄Π΅ΠΉ:
- Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄ΠΎΠΏΠΎΠ»Π½ΡΡΡΠΈΠΌΠΈ ΡΠΌΠ΅Π½ΠΈΡΠΌΠΈ (ΠΊΡΠΎ-ΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅Ρ, ΠΊΡΠΎ-ΡΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ ΠΈ Ρ.Π΄.)
- ΡΡΡΠ΅ΠΌΡΡΠΈΠΌΡΡ ΠΊ ΠΎΠ±ΡΠΈΠΌ ΡΠ΅Π»ΡΠΌ (ΠΈΠΌ Π²ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π·Π°Π΄Π°ΡΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ°, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡΠ°ΠΌΠΎΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠ΅Π½ΠΈΠ΅)
- ΡΠ°Π·Π΄Π΅Π»ΡΡΡΠΈΡ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ Π·Π° Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° (Π΅ΡΠ»ΠΈ Π²Π΄ΡΡΠ³ Ρ ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΠΈΠ· ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΡΡΠ΄Π½ΠΎΡΡΡ Ρ Π΅Π³ΠΎ Π»ΠΈΡΠ½ΡΠΌ Π’Π, ΡΠΎ Π΅Π³ΠΎ Π½Π°ΠΏΠ°ΡΠ½ΠΈΠΊΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠΈΠ΄ΡΡ Π΅ΠΌΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ (ΡΡΠΈΠΌ Π½Π΅ ΡΡΠΎΠΈΡ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ, ΠΈΠ½Π°ΡΠ΅ Π²Ρ ΠΏΡΠΎΡΡΠΎ ΠΎΠΊΠ°ΠΆΠ΅ΡΠ΅ΡΡ Π½Π΅Π½ΡΠΆΠ½ΡΠΌ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ)).
Π’Π°ΠΊ-Ρ, ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ΅Π±Π΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π²ΠΎΠΏΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π² ΡΠ²ΠΎΠ΅ΠΉ Π³ΠΎΠ»ΠΎΠ²Π΅ (Π΄Π°, Π΄Π°, Π°Π²ΡΠΎΡΡ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΡΠΌΠ΅ΡΡ ΡΠΈΡΠ°ΡΡ ΠΌΡΡΠ»ΠΈ): Β«Π ΠΊΡΠΎ Π·Π° ΡΡΠΎ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅? Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Β«Π΅ΡΡΡ ΡΠ²ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎΒ»? ΠΠ»ΠΈ Π²ΡΠ΅ Π΄Π΅Π»Π°ΡΡ, ΡΡΠΎ Π·Π°Ρ ΠΎΡΡΡ?Β».
ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ° Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π΅ΡΡΡ ΡΠ²ΠΎΡ ΡΠΎΠ»Ρ ΠΈ ΡΠ²ΠΎΠΈ Π·Π°Π΄Π°ΡΠΈ. ΠΠ΅Π΄Ρ ΠΈΠ½Π°ΡΠ΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° Π±ΡΠ» Π±Ρ Ρ Π°ΠΎΡ. ΠΠ°Π²Π°ΠΉ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΎΠ»ΠΈ Π΅ΡΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ:
- Team Leader:
Team Leader β ΡΡΠΎ Π½Π΅ΡΡΠΎ ΡΡΠ΅Π΄Π½Π΅Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ½ΡΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ ΠΈ ΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Π΄Π΅Π²Π΅Π»ΠΎΠΏΠ΅ΡΠΎΠΌ.
ΠΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ Π΅ΡΡΡ Π΄Π²Π΅ lead ΡΠΎΠ»ΠΈ: ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡΠΊΠ°Ρ β PM, ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠ°Ρ β System Architect. Π’ΠΈΠΌΠ»ΠΈΠ΄ ΠΎΡΡΠ°ΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠ±Π΅ ΡΠΎΠ»ΠΈ, Π½ΠΎ Π°ΠΊΡΠ΅Π½Ρ Π΅Π³ΠΎ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΠ΅ΠΉ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ Π½Π° ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ (Π°ΠΊΡΠ΅Π½Ρ Π½Π° ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΡΡ ΡΠ°ΡΡΡ β ΡΡΠΎ tech lead).
Β«ΠΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΡ ΡΠΈΠΌΠ»ΠΈΠ΄Π° #1: Π·Π°Π±ΠΎΡΠ° ΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅. ΠΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΡΠ²ΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ΅Π±Ρ ΠΊΠΎΠΌΡΠΎΡΡΠ½ΠΎ Π² ΡΠ°Π±ΠΎΡΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΠΈ Π±ΡΡΡ Ρ ΠΎΡΠΎΡΠΎ ΠΌΠΎΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠΈΠΌΠ»ΠΈΠ΄ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΠΈ ΠΊΠ°ΡΡΠ΅ΡΠ½ΡΠΉ ΡΠΎΡΡ ΡΠ²ΠΎΠΈΡ ΡΠ΅Π±ΡΡ, ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ Π±Π΅ΡΠ΅Π΄Ρ Π½Π° ΡΠ΅ΠΌΡ, ΠΊΡΠ΄Π° Π»ΡΠ΄ΡΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΡΡ, ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΈΠΌ Π² ΡΡΠΎΠΌΒ».
ΠΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΡΠ΅ΡΠΊΡΡ ΡΠΎΠ»Ρ ΡΠΈΠΌΠ»ΠΈΠ΄Π° ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΠΈ, ΠΊΠ°ΠΊ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ, ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅Π»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ, Π²ΡΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΎΡΠ΅Π½ΠΊΠΈ ΠΈ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ Π³ΡΠ°ΡΠΈΠΊΠ°, ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΈΡΠΈΠ½Π³ΠΈ, ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ Ρ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠΎΠΌ, ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ ΠΈ Π²ΡΠ΅ΠΌΠΈ ΡΠ»Π΅Π½Π°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ (ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΡΠ΅ΡΡΠΈΡΠΎΠ²ΡΠΈΠΊΠ°ΠΌΠΈ, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°ΠΌΠΈ).
ΠΠΎΠ΄ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΡΡ ΡΠΎΠ»Ρ: ΡΡΠ°ΡΡΠΈΠ΅ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π²ΡΠ±ΠΎΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, R&D, code review, ΠΌΠ΅Π½ΡΠΎΡΠΈΠ½Π³ Π΄ΠΆΡΠ½ΠΈΠΎΡΠΎΠ², ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ, Π³ΡΠ°ΠΌΠΎΡΠ½ΠΎΠ΅ Π²ΠΎΠ²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ ΡΠ»Π΅Π½ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ Π·Π° ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΡΡ ΡΠ°ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π’ΠΈΠΏΠΈΡΠ½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ Π΄Π΅Π½Ρ ΡΠΈΠΌΠ»ΠΈΠ΄Π° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ:
- ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ Π·Π°Π΄Π°Ρ ΠΈ ΠΈΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
- ΡΡΠ΅Π½Π΄Π°ΠΏ Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
- ΠΌΠΈΡΠΈΠ½Π³ΠΈ
- ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
- Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ
- code review
- Project manager:
Project Manager β ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ, ΡΡΠ΅ΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Π² ΡΠ΅Π»ΠΎΠΌ: ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ°ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠ², ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ, ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ, ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ.
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΡ ΠΈ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ PM β Π΄ΠΎΠ²Π΅ΡΡΠΈ ΠΈΠ΄Π΅Ρ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ° Π΄ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ ΡΡΠΎΠΊ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ. Π ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ PMβΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΠΏΠ»Π°Π½ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ ΠΈ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠΎΠΌ, ΡΡΡΡΠ°Π½ΡΡΡ ΠΏΠΎΠΌΠ΅Ρ ΠΈ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΈ ΠΏΠΎΡΡΠ°Π²ΠΊΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° Π² ΡΡΠΎΠΊ.
ΠΠ°Π΄Π°ΡΠΈ PMβΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΠ΅ΡΠΊΠΈΠ΅. Π’Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ β ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ΄Π½Π΅Π²Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΠΈΠΉ Ρ ΠΏΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. Π‘ΡΡΠ°ΡΠ΅Π³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΡΡ ΡΠ΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΏΡΡΡ ΠΊ Π½Π΅ΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ.
Β«ΠΠ»Π°Π²Π½Π°Ρ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ Π΄Π»Ρ PMβΠ°: βΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎβ, ΡΡΠΎ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΡΠ°Π·ΡΠΌΠ½ΡΠ΅ ΡΡΠΎΠΊΠΈ Ρ ΡΠ°Π·ΡΠΌΠ½ΡΠΌ ΡΡΠΎΠ²Π½Π΅ΠΌ ΠΊΠ°ΡΠ΅ΡΡΠ²Π°Β».
- Π’Π΅ΡΡΠΈΡΠΎΠ²ΡΠΈΠΊ:
Π’Π΅ΡΡΠΈΡΠΎΠ²ΡΠΈΠΊ β ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° Ρ ΡΠ΅Π»ΡΡ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ Π² Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅ ΠΈ ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ.
ΠΠ»Π°Π²Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²ΡΠΈΠΊΠ°:
- ΠΠΎΠ½ΡΡΠΎΠ»Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ².
- ΠΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°ΠΌΠΈ.
- Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π°Π²ΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈ ΠΈΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠΉ ΠΏΡΠΎΠ³ΠΎΠ½.
- Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
- ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ Π΄Π΅ΡΠ΅ΠΊΡΠΎΠ².
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ:
- Junior:
Junior β ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ.ΠΡΠΎΠΉΠ΄Ρ ΠΈΠ½ΡΠ΅ΡΠ½Π°ΡΡΡΡ, ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΆΡΠ½Π°. ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΌΡ β ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ. ΠΡΠ»ΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π²ΡΡΡΡΠΎΠ΅Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Π΅Π· Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΠΊΡΡΠΎΠΊ ΡΠΈΠΏΠΎΠ²ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π₯ΠΎΡΡ Junior ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΡΠΈΠ±Π°ΡΡΡΡ, Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ Π½ΡΠ°Π½ΡΠΎΠ², ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡ ΠΏΠ»Π°Π½Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Ρ ΡΠΈΠΌΠ»ΠΈΠ΄ΠΎΠΌ ΠΈΠ»ΠΈ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π½ΠΈΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄.
ΠΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ Π½Π° Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠ½ΡΠΎΡ ΡΠ΅ΡΠΈΡ Π·Π° Π΄Π΅ΡΡΡΡ ΠΌΠΈΠ½ΡΡ, Π΄ΠΆΡΠ½Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΡΡΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΏΠΎ ΡΠ°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ, Π° Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΊΠΎΠ΄ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ, Π·Π°ΡΡΠ°ΡΠΈΠ² ΠΌΠ°ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ½Π΅ΡΠ³ΠΈΠΈ. ΠΠ°ΠΆΠ½ΠΎ Π½Π΅ Π±ΠΎΡΡΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΈ ΡΡΠ²ΡΡΠ²ΠΎΠ²Π°ΡΡ Π±Π°Π»Π°Π½Ρ: ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ΄Π½Π°ΠΆΠ°ΡΡ, ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π² ΡΠ΅ΡΠΈΡΡ-ΡΠ°ΠΊΠΈ Π·Π°Π΄Π°ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ, Π° ΠΊΠΎΠ³Π΄Π°, Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ Π±ΠΈΡΡΡΡ Π»Π±ΠΎΠΌ ΠΎ ΡΡΠ΅Π½Ρ, ΡΠΆΠΈΠ³Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΈ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ Π·Π° ΠΏΠΎΠΌΠΎΡΡΡ. ΠΠΏΡΠ°Π²Π΄ΡΠ²Π°ΡΡ ΡΠ²ΠΎΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠ°Π·ΠΎΠΉ Β«Ρ ΠΆΠ΅ Π΅ΡΠ΅ Π΄ΠΆΡΠ½Β» β ΠΏΠ»ΠΎΡ Π°Ρ ΠΈΠ΄Π΅Ρ.
- Middle:
Middle β ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ ΠΌΠΈΠ΄Π»-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ β ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄ Π½ΠΈΠΌ Π·Π°Π΄Π°ΡΠΈ. ΠΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ Π±ΡΠ»ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠ½ΠΊΡΠ΅, ΠΏΡΠ°Π²Π΄Π°? ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΡΡ Π²Π°ΠΆΠ½ΡΠΉ Π½ΡΠ°Π½Ρ β Π·Π΄Π΅ΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΡΠ»ΠΎΠ²ΠΎ Β«ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅Β». Π’ΠΎ Π΅ΡΡΡ Π½Π° Π½ΠΎΠ²ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ Π±ΠΈΠ·Π½Π΅ΡΠ° ΠΈ ΡΠΌΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡ ΠΈΡ Π² ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- ΠΠΈΠ΄Π»-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π³Π»ΡΠ±ΠΆΠ΅ ΠΏΠΎΠ½ΡΡΡ Π·Π°Π΄Π°ΡΡ, Π°, Π·Π½Π°ΡΠΈΡ, ΡΠΎΡΠ½Π΅Π΅ Π΅Π΅ ΠΎΡΠ΅Π½ΠΈΡΡ ΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½Π΅Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ. ΠΡΠ»ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, Ρ ΠΎΡΠΎΡΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΎΠ±ΡΠ°ΡΠΈΡ Π½Π° ΡΡΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π½Π΅ ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠ½Π΅Ρ Π²Π°Π»ΠΈΡΡΡΡ ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΌ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
- ΠΠΈΠ΄Π»-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π·Π½Π°ΠΊΠΎΠΌ ΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌΠΈ ΡΠ°Π±Π»ΠΎΠ½Π°ΠΌΠΈ ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ, ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, Π·Π°ΡΠ΅ΠΌ ΠΎΠ½ΠΈ Π½ΡΠΆΠ½Ρ, ΠΈ ΡΠΌΠ΅Π΅Ρ ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ. Π‘ΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΊΠΎΠ΄Π°, Ρ. ΠΊ. ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½ΠΎΠ²ΠΎΠΌΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ Π±ΡΡΡΡΠ΅Π΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, ΡΡΠΎ ΠΊ ΡΠ΅ΠΌΡ, ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΡΡΠΊΡΡΡΡ ΡΠΈΠΏΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π΅Π»Π°Π΅Ρ Π·Π°Π΄Π°ΡΡ Π΅Π³ΠΎ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Ρ Π½ΡΠ»Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°ΡΡΡΠΆΠ΄Π°ΡΡ ΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡ Ρ ΠΎΡΠΎΡΠΈΠΉ ΠΊΠΎΠ΄ ΠΎΡ ΠΏΠ»ΠΎΡ ΠΎΠ³ΠΎ.
- ΠΠΈΠ΄Π»-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π΅ ΠΎΠ΄ΠΈΠ½. ΠΠ½ ΡΠΌΠ΅Π΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ»Π΅Π½Π°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ: ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΡΠ΄ΠΈΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Ρ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠΎΠΌ, ΡΡΠΎΡΠ½ΠΈΡΡ Ρ Π±ΠΈΠ·Π½Π΅Ρ-Π°Π½Π°Π»ΠΈΡΠΈΠΊΠ° Π½Π΅ΠΏΠΎΠ»Π½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΠΎΡΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ° (Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠΉ Π΅ΡΡΡ) ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π²Π»Π°Π΄Π΅Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
- Senior:
Senior β ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΏΠΎΠ²ΠΈΠ΄Π°Π²ΡΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π½Π°Π±ΠΈΠ²ΡΠΈΠΉ ΠΊΡΡΡ ΡΠΈΡΠ΅ΠΊ ΠΈ ΡΡΠΌΠ΅Π²ΡΠΈΠΉ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ Π²ΡΠ²ΠΎΠ΄Ρ. ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π·Π°Π΄Π°ΡΠ° ΡΠΈΠ½ΡΠΎΡΠ° β ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. Β«ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅Β» β ΡΡΠΎ ΡΠ°ΠΊΠΈΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½ΠΎΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·Ρ Π±ΠΈΠ·Π½Π΅ΡΡ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΡΡ Π·Π°ΡΡΠ°ΡΡ. Π₯ΠΎΡΠΎΡΠΈΠΉ ΡΠΈΠ½ΡΠΎΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π½ΠΎ Π΄ΡΠΌΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ Π³ΠΎΡΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π Π°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Ρ ΠΏΠ»ΠΎΡΠ°Π΄ΠΊΡ Π΄Π»Ρ Π°ΡΠΊΡΠΈΠΎΠ½Π°, ΡΠΈΠ½ΡΠΎΡ Π²ΡΠ΅Π³Π΄Π° Π·Π°Π΄Π°Π΅ΡΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠΌ ΠΎ ΠΏΠΈΠΊΠΎΠ²ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΈ ΡΡΠ°ΡΠ°Π΅ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°Π±Π»ΠΈΡΡ ΠΠ. ΠΠ½ Π·Π°ΡΠ°Π½Π΅Π΅ Π΄ΡΠΌΠ°Π΅Ρ ΠΎΠ± ΡΠ·ΠΊΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΅Π΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΠΌΠ½ΠΈΡ ΠΎΠ± ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ , Π²ΡΠ·Π²Π°Π½Π½ΡΡ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ².
Π’Π°ΠΊΠΎΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ Π΄Π΅Π»Π°Π΅Ρ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²Π΅ΡΡ β ΡΠ΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π΅ΡΠ΅ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ. Π‘ΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΡΡΠΎ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π΄Π°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄Π΅Π½ΠΈΡ. Π Π²ΠΎΡ Π΅ΡΠ»ΠΈ Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ ΠΆΠΈΠ²Π΅Ρ ΠΎΡ ΠΏΠΎΠΆΠ°ΡΠ° Π΄ΠΎ ΠΏΠΎΠΆΠ°ΡΠ°, Π° Π²Π°ΠΌ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π²ΡΠΊΠΈΠ΄ΡΠ²Π°ΡΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΊΡΡΠΊΠΈ ΠΊΠΎΠ΄Π° β ΡΡΠΎ ΡΠΈΠΌΠΏΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΈΠ½ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ.
- Junior:
- ΠΠΈΠ·Π°ΠΉΠ½Π΅Ρ:
ΠΠΈΠ·Π°ΠΉΠ½Π΅Ρ β ΡΠΎΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ. ΠΠΎΠ³ΠΈΡΠ½ΠΎ, Π½Π΅ ΠΏΡΠ°Π²Π΄Π° Π»ΠΈ?
Π Π°Π±ΠΎΡΠ° Π΄ΠΈΠ·Π°ΠΈΜΠ½Π΅ΡΠ° Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΈΜ ΠΏΠΈΠΊΡΠ΅Π»Ρ, ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ.
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π»ΡΠ΄Π΅ΠΉ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½ β ΡΡΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π°Π±ΠΎΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, ΡΠ²Π΅ΡΠΎΠ² ΠΈ ΡΡΠΈΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π²Π΅ΡΡΡΠ°Π»ΡΡΠΈΠΊΠ°ΠΌ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡ. ΠΠ½ΠΎΠ³Π΄Π° ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ, Π½ΠΎ ΡΠ°ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΠΎΠΌ ΡΡΡΠ΄Π½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΏΠΎΡΡΡΠΎΠ»ΠΈΠΎ.
ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ. Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ ΠΎΡΠΎΡΠΈΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ 4 ΡΠ°Π³Π°. ΠΠΎΡ ΠΎΠ½ΠΈ:
- ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
Π Π°Π±ΠΎΡΠ° Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΊΠ°ΠΊ ΡΠ΅Π°ΡΡ Ρ Π²Π΅ΡΠ°Π»ΠΊΠΈ: ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ΄Π°ΡΡ Π²Π΅ΡΡ Π½ΡΡ ΠΎΠ΄Π΅ΠΆΠ΄Ρ, Π΄Π°Π»ΡΡΠ΅ Π½Π΅ ΠΏΡΠΎΠΉΠ΄Π΅ΡΡ. ΠΡΠ»ΠΈ Π½Π΅ Π²Π½ΠΈΠΊΠ½ΡΡΡ Π² ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΠ»ΡΡΠΈΡΡΡ Π½Π΅ΠΆΠΈΠ·Π½Π΅ΡΠΏΠΎΡΠΎΠ±Π½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ.
- ΠΠΎΠΈΡΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΡ:
ΠΠΎΠ³Π΄Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠΎΠ½ΡΡΠ½Π°, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΊΠ°ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. Π ΡΡΡΠΎΡΠ²ΡΠΈΡ ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ ΡΡΠΎ Π²ΡΡΠΊΠΈΠ΅ Π½Π°Π±ΡΠΎΡΠΊΠΈ ΠΈ ΠΏΡΠΎΡΠΎΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π²ΡΡΡΡΠΎΠΈΡΡ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΠΈΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°.
- ΠΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅:
ΠΡΠΎ ΠΊΠ°ΠΊ ΡΠ°Π· ΠΈ Π΅ΡΡΡ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ ΠΈ ΠΏΠΎΠ΄Π±ΠΎΡ ΡΡΠΈΡΡΠΎΠ². ΠΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΡ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΎΡΡΡΠ΄Π° ΠΈ ΡΡΡ ΠΆΠ΅ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ, Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠ°ΠΊΠΈΡ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π°Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π½Π° ΠΡΠΈΠ±Π±Π»Π΅ ΠΈΠ»ΠΈ ΠΠ΅Ρ ΡΠ½ΡΠ΅.
- Π‘ΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΠ΅:
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π² Π³ΠΎΠ»ΠΎΠ²Π΅ ΠΈ Π½Π° Π±ΡΠΌΠ°Π³Π΅ ΡΡΡΠΎΠΉΠ½ΠΎΠ΅ ΠΈ ΠΈΠ·ΡΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ Π½Π΅ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΎΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅. ΠΡΠ»ΠΈ ΠΎΠΏΡΡΡΠΈΡΡ ΡΡΠΎΡ ΡΡΠ°ΠΏ ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠ΄Π°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π½Π°ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΠΎ Π² Π»ΡΡΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»Π°ΡΡ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΡ. Π’ΠΎ, ΡΡΠΎ Π² ΠΈΡΠΎΠ³Π΅ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠ°Π²ΠΎΠΊ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π±ΡΠ΄Π΅Ρ ΠΌΠ°Π»ΠΎ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° Π²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ.
- ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π§ΡΠΎΠΆ, Π΅ΡΠ»ΠΈ ΡΡ Π΄ΠΎΡΠΈΡΠ°Π» Π΄ΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° β ΠΏΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ, ΡΡ Π½Π΅ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΊΡΡΡ! ΠΠ΅Ρ, Π½Ρ ΠΏΡΠ°Π²Π΄Π°, Ρ ΡΠ΅Π±Ρ ΠΌΠΎΠ·Π³ Π΅ΡΠ΅ Π½Π΅ Π²ΡΠΊΠΈΠΏΠ΅Π» ΠΎΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ? ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ Π½Π΅Ρ.
ΠΡΠ°ΠΊ, Π½Π°Π΄Π΅ΡΡΡ, Π½Π°ΡΠ° ΡΡΠ°ΡΡΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° ΡΠ΅Π±Π΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠΎΠ½ΠΊΠΎΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. Π Ρ ΡΠ΅Π±Ρ Π½Π΅ ΠΎΡΡΠ°Π»ΠΎΡΡ ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ². Π ΠΊΠΎΠ³Π΄Π° ΡΡ ΠΏΡΠΈΠ΄Π΅ΡΡ Π² ΡΡΠΏΠ΅Ρ-ΠΏΡΠΏΠ΅Ρ-Π½Π΅ΡΠ΅Π°Π»ΡΠ½ΠΎ-ΠΊΡΡΡΡΡ-ΠΈ-ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΈ ΡΠ΅Π±Ρ ΠΏΡΠΈΠΌΡΡ Π½Π° ΡΠ°Π±ΠΎΡΡ (ΠΏΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΡΡΡ Π½Π΅ ΠΏΡΠΈΠ½ΡΡΡ), ΡΠΎ ΡΡ Π½Π΅ ΡΠ°ΡΡΠ΅ΡΡΠ΅ΡΡΡΡ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΡ ΡΠ²ΠΎΠ΅ΠΌΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΈΠΊΡ, ΠΊΡΠΎ ΡΡΡ Π³Π»Π°Π²Π½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ. Π ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡ ΠΈ ΡΠ²ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡ, ΠΊΡΠΎ Π·Π½Π°Π΅Ρ π
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!
P.S.
Π‘ΡΠ°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π° ΡΡΠ΅Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΠ¨Π (ΠΠΎΡΠΊΠΎΠ²ΡΠΊΠ°Ρ ΡΠΊΠΎΠ»Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ²), ΠΏΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°ΠΌ Π»Π΅ΠΊΡΠΈΠΉ ΠΊΡΡΡΠ° Β«ΠΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β».
ΠΠΎΠ΄ Π½Π°ΡΠ°Π»Π° Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ: 2019
ΠΠΎΠ΄ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ: Π½Π΅ ΡΠΊΠ°Π·Π°Π½
Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡ
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡ
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Git
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ
Π§ΡΠΎΠ±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
ΠΠΎΠ΄Π΅Π»ΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² Git
ΠΡΠ²ΠΎΠ΄Ρ
.gitignore. ΠΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Ρ
ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡ
ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ:
ΠΠ°Π½Π½Π°Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ΅Π±Π½ΠΎΠΉ Π΄Π»Ρ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ git, Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ GitHub. ΠΡΠΎ Π½Π΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΠΎ ΡΡΠΎ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΠΈΠ΄Π΅ΠΈ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π² ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠ΅ ΡΠΏΠ΅ΡΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΊ Π²Π°ΡΠΈΠΌ ΡΠ°Π±ΠΎΡΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌ. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΅ΡΠ½ΠΎΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠΎΡΡΠ΅Π½ΠΈΡΡΠΉΡΠ΅ΡΡ Π½Π° Π½Π΅ΠΌ. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠΉ ΡΡΠ΅Π±Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° GitHub. ΠΠΎΠ³Π΄Π° Π²Ρ Ρ
ΠΎΡΠΎΡΠΎ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΠΈ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π° Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π²Π°ΡΠΈ Π·Π½Π°Π½ΠΈΡ Π² ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
. ΠΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΎΠΌ ΠΊΠ°ΠΊΠΎΠΉ Π»ΠΈΠ±ΠΎ ΡΠ°Π±ΠΎΡΡ. ΠΡΠΎ Π°Π²ΡΠΎΡΡΠΊΠ°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ΅Π»ΡΡ ΠΏΡΠΎΡΡΠ½ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ°Π·Π΄Π΅Π»: Β«Π¦Π΅Π»Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈΒ».
ΠΠ΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ΅ΠΌΠ°ΡΠΊΠ°:
ΠΠ΅ΡΠ²ΡΠΉ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ»Π΅Π΄ΠΎΠ²Π°Π»ΠΎ Π±Ρ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ β ΡΡΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΡΠ»ΠΈ Π² ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π²Π°ΡΡ ΡΠ΅ΡΡ Π·Π°ΡΠΈΡΠ°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ. Π’ΠΎ ΠΎΠ±ΡΡΠ½ΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ ΡΠ΅ΡΠ°ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
ΠΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΏΡΠ°Π·Π΄Π½ΡΠΉ.
Π§ΡΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠΏΠ°ΡΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
ΠΠΈΡΠ½ΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΊΠ»ΡΡΠΈ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΏΠ»Π°ΡΠ΅ΠΆΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ(ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΏΠ»Π°ΡΠ΅ΠΆΠ½ΡΠΌΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠΈ Amazon). Π Π²Π΅ΡΠΊΠΈ master ΠΈ release Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΏΠ°ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
, Π½Π΅ΠΎΠΏΡΡΠ½ΡΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΠΈ Π½Π΅ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄, Π½Π΅ ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠΉ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΠΉΡΠ΅ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ: ΡΡΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² GitHub ΠΈ ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ .gitignore.
Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½Π°Ρ ΡΡΡΠΊΠ°. ΠΠΎ ΠΏΡΡΡΡ Π²Π°Ρ ΡΡΠΎ Π½Π΅ ΠΏΡΠ³Π°Π΅Ρ. ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ. ΠΠ°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, ΠΈ Π²Π½Π΅ΡΡΠΈ ΡΡΠ½ΠΎΡΡΡ. ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π½Π°Π΄ ΡΠ²ΠΎΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, ΡΠΎ Π²Π°ΠΌ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅Π±Π΅ Git ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ. ΠΠ°ΠΌ Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π°ΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΡ. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ β ΡΡΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΊΠ°ΠΊ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅, ΡΠΎΠ»ΡΠΊΠΎ Π±Π΅Π· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ β ΠΏΠΎ ΡΡΡΠ΅ΡΡΠ²Ρ ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠ°Π²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° Π½Π° ΠΎΡΠΈΠ±ΠΊΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠ΄Π΅. ΠΠ°ΠΊ Π²Ρ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ Β«ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ ΡΠ²ΠΎΠΉΡΡΠ²Π΅Π½Π½ΠΎ ΠΎΡΠΈΠ±Π°ΡΡΡΡΒ». Π’Π°ΠΊ Π²ΠΎΡ, ΠΎΡΠΈΠ±Π°ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΌΠ΅Π½ΡΡΠ΅. Π, ΡΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΡΠ²ΠΎΠ΅ΠΌΡ ΠΊΠΎΠ΄Ρ ΠΈ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ, Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΊΠ°Ρ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΊΠ°ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ β ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ.
ΠΡΠ²Π΅ΡΡΡΠ΅ Π½Π° Π²ΠΎΠΏΡΠΎΡ: Π ΡΠ΅ΠΌ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ° Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΈ Π²Ρ ΠΏΠΎΠΉΠΌΠ΅ΡΠ΅ Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΡΠ΅ ΠΎΠ΄Π½ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ: Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ΅Π²ΡΡ(ΠΏΠ΅ΡΠ΅ΡΠΌΠΎΡΡΠ°, Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠΈ) ΠΊΠΎΠ΄Π°. Π‘Π»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ: ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ². Π’ΠΎ Π΅ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°Π·Π½ΡΡ Π²Π΅ΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΡΠ΄Π΅Π»Π°Π½Π½ΡΡ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ Π² ΠΎΠ΄Π½Ρ Π²Π΅ΡΠΊΡ. ΠΠ΄Π΅ΡΡ, Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π΅ Ρ Π½Π΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΏΠ»Π°Π³ΠΈΠ½Ρ Π΄Π»Ρ git Π² IDE. ΠΠ΄Π΅ΡΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΡΠ°Π±ΠΎΡΡ Ρ git ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π½Π° GitHub.
ΠΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ:
Π ΡΠ΅ΠΌ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ?
Π ΡΠ΅ΠΌ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ?
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git?
ΠΠ°ΠΊ Π½Π°ΡΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ git?
ΠΠ°ΠΊ Π½Π°ΡΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GitHub?
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅(Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅) ΠΊΠΎΠΌΠ°Π½Π΄Ρ Git.
ΠΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π΄Π»Ρ Git?
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ?
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ?
Git-Ρ
ΠΎΡΡΠΈΠ½Π³ Π½Π° ΡΠ°Π·Π½ΡΡ
ΡΡΠ»ΠΎΠ²ΠΈΡΡ
ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ.
ΠΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΠΈΠ· Π½ΠΈΡ
: Github, Sourceforge, Google Code, GitLab, Codebase ΠΈ ΡΠ΄.
Π‘Π΅ΡΠ²ΠΈΡΡ git Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ(ΡΡΡ, ΡΡΠΎΠ±Ρ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΎ Ρ ΠΎΠ»ΠΈΠ²Π°ΡΠ°, Π΄ΠΎΠΏΠΈΡΡ: ΠΠΎ ΠΌΠΎΠ΅ΠΌΡ ΠΌΠ½Π΅Π½ΠΈΡ):
1. ΠΠ°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ git ΡΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
2. GitHub
3. BitBucket
4. GitLab
ΠΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ git ΡΠ΅ΡΠ²Π΅ΡΠ° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π½Π° Ρ Π°Π±ΡΠ΅ >>>
Π Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ GitHub.
Π¦Π΅Π»Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ: ΠΠΎΡΠΎΡΠΊΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git.
ΠΠΏΠΈΡΠ°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅, ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Git. Π₯ΠΎΡΡ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΉ ΡΠ°Π±ΠΎΡΡ Ρ git, ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΈΠ· Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΌ ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ°ΡΠΊΡΡΡΡ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ. Π§ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²Π²Π΅ΡΡΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π² Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠΎΠΌ Π²ΠΈΠ΄Π΅, Π΄Π»Ρ ΡΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ.
Π’Π°ΠΊΠΆΠ΅ Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Π³ΡΠ΅ ΠΎΡΠ²ΠΎΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. Π¦Π΅Π»Ρ ΡΡΠ°ΡΡΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±Π·ΠΎΡ ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ΅ Git. ΠΠΎΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌΠΈ. ΠΠΎΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΠ΅Π»Ρ, ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π±Π΅Π·Π΄ΡΠΌΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅Ρ
ΠΈΠ»ΠΈ ΠΈΠ½ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄ Git.
ΠΡΠ΅Π΄ΠΌΠ΅ΡΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ
Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ β ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠ΅ΠΉΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΡΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°, ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π½Π½ΠΈΠΌ Π²Π΅ΡΡΠΈΡΠΌ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ, ΠΊΡΠΎ ΠΈ ΠΊΠΎΠ³Π΄Π° ΡΠ΄Π΅Π»Π°Π» ΡΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
Git β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
GitHub β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Git.
repository β Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΡΡΠ»ΠΎΠΊ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ
commit β ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ ΡΠ°Π·Π½ΠΈΡΡ Π² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ
HEAD β (ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ) ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠ΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° commit. ΠΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° Π²Π΅ΡΠ²Ρ. Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ β Β«Detached HEADΒ»
HEAD ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²ΡΠ±ΡΠ°Π½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ checkout.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΡΠΎ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅: Β«headΒ» (Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅) ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ Π»ΡΠ±ΠΎΠΌΡ ΠΈΠ· Π½Π°Π·Π²Π°Π½Π½ΡΡ
Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² Π² Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅; Β«HEADΒ» (Π²Π΅ΡΡ
Π½ΠΈΠΉ ΡΠ΅Π³ΠΈΡΡΡ) ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ ΡΠ΅ΠΊΡΡΠ΅ΠΌΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΌΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΡ(ΡΡΡΠ»ΠΊΠ΅). ΠΡΠΎ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Git. HEAD ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΡ Π²Π΅ΡΡΠΈΠ½Ρ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π²Π΅ΡΠΊΠΈ ΠΈΠ»ΠΈ Π½Π° commit.
ΠΠ±ΡΠ΅ΠΊΡΡ Git. Π§Π΅ΡΡΡΠ΅ ΡΠΈΠΏΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²: Blob, Tree, Commit ΠΈ References.
ΠΠ΅ΡΠ²Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π½Π΅ Π² ΡΠ°ΠΌΠΎΠΌ Git, Π° Π½Π°ΡΠ»Π΅Π΄ΡΠ΅ΡΡΡ ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌ.
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ± ΠΎΠ±ΡΠ΅ΠΊΡΠ°Ρ
Git Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
git ΡΠ΅ΡΠ²ΠΈΡΡ β ΡΠ΅ΡΠ²ΠΈΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΡΡΠ»ΡΠ³ΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ git.
HEAD β ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ. Π’Π΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΠΊΠ°. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ: ΠΠ°ΡΠ΅ ΡΠ°Π±ΠΎΡΠ΅Π΅ Π΄Π΅ΡΠ΅Π²ΠΎ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΈΠ· ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π΄Π΅ΡΠ΅Π²Π°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΡΡΠ»Π°Π΅ΡΡΡ HEAD. HEAD β ΡΡΠΎ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² Π² Π²Π°ΡΠ΅ΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ HEAD, Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ Π½Π°ΠΏΡΡΠΌΡΡ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
working directory β ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅
staging area β ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ°Ρ ΠΎΠ±Π»Π°ΡΡΡ
branch β Π²Π΅ΡΠΊΠ°, ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π½Π°Π±ΠΎΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ
merge β ΡΠ»ΠΈΡΠ½ΠΈΠ΅, ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ Π² ΠΎΠ΄Π½Ρ
pull β Π²ΡΡΠ½ΡΡΡ, Π²Π·ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
push β Π²ΡΡΠΎΠ»ΠΊΠ½ΡΡΡ, ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ
Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ:
# β Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΈΠΌΠ²ΠΎΠ» ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
<> β ΡΠ³Π»ΠΎΠ²ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ, ΡΠ°ΠΌ Π³Π΄Π΅ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΠΏΠΈΡΠ°ΡΡ Π½ΡΠΆΠ½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡΡΠ°Ρ ΡΡΠΈ ΡΠΊΠΎΠ±ΠΊΠΈ
$ β ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π° Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅
ΠΠ΅Π±ΠΎΠ»ΡΡΠΎΠ΅ Π²ΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅
Π₯ΠΎΡΠ΅Π» Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΡ ΠΏΠΎ git, Π° ΠΏΠΎΠ»ΡΡΠΈΠ»Π°ΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π΄Π»ΠΈΠ½Π½Π°Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ.
ΠΠΎ Π±Π΅Π· ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ ΡΠ΅Ρ ΠΈΠ»ΠΈ ΠΈΠ½ΡΡ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ² ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π²ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΠΈ Π½Π΅ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ.
Git β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
ΠΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π°, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Π’ΠΎ Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ
ΠΊΠΎΠ½ΡΠ°Ρ
ΡΠ²Π΅ΡΠ° ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ.
ΠΠ΅Ρ Git ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, Π½ΠΎ ΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΡ, ΠΏΠΈΡΠ°ΡΠ΅Π»ΠΈ, ΡΠ΅Π΄Π°ΠΊΡΠΎΡΡ, ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²ΡΠΈΠΊΠΈ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠΈ. GitHub ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ hr ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΡ ΠΈ hr ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠΏΠ΅ΡΠ½ΡΡ
ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΎΠ² Π½Π° ΡΠ΅ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅ Π²Π°ΠΊΠ°ΡΠΈΠΈ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΠΎΠ±Π»Π°ΡΡΡΡ
. ΠΠ»Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΡΡΠΏΠ΅ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
Π‘ΠΈΡΡΠ΅ΠΌΠ° Git ΠΎΡΠ΅Π½Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ½Π° ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠ°ΡΡΡΠ»ΠΊΠΈ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡΡΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΠ»Π°ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ
ΠΈ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. Π’ΠΎ Π΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ°ΡΡΡΠ»ΠΊΠ° ΡΡΠΎ ΡΠ°ΡΡΡΠ»ΠΊΠ° ΡΠ°Π·Π½ΠΈΡΡ Π² Π²Π°ΡΠΈΡ
ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡΡ
.
ΠΡΡΡΠ»Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π»ΠΈΡΠΈΡ Π² ΠΏΠ°ΠΏΠΊΠ°Ρ ΠΈ ΡΠ°ΠΉΠ»Π°Ρ . Π Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΡΠΎΠΌΡ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠ΄Π΅Π»ΡΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ ΠΎΡΠΎΡΠ΅ΠΉ ΠΈ Π±ΡΡΡΡΠΎΠΉ ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ. Π ΡΡΠΎΠΌ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΡΡ ΠΌΠΎΡΡ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° ΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅.
ΠΡΡΠΎΡΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ
Π¦ΠΈΡΠ°ΡΠ° ΠΈΠ· ΠΠΈΠΊΠΈ:
Git (ΠΏΡΠΎΠΈΠ·Π½oΡΠΈΡΡΡ Β«Π³ΠΈΡΒ»[8]) β ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ. ΠΡΠΎΠ΅ΠΊΡ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΡΠ΄ΡΠ° Linux, ΠΏΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ Π²ΡΠΏΡΡΠ΅Π½Π° 7 Π°ΠΏΡΠ΅Π»Ρ 2005 Π³ΠΎΠ΄Π°. ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΠΆΡΠ½ΠΈΠΎ Π₯Π°ΠΌΠ°Π½ΠΎ.
Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡ(ΠΊΠΎΡΠΎΡΠΊΠΎ)
ΠΡΠΎΠ΅ΠΊΡ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΡΠ΄ΡΠ° Linux
Git ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΎΠ½Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ GNU GPL 2.
Git is an Open Source project covered by the GNU General Public License version 2 (some parts of it are under different licenses, compatible with the GPLv2).
ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π·Π°Π΄Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΉ β ΡΡΠΎ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΡΠΎΠΊΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠ΅ΠΉΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. ΠΠ»Π°Π²Π½ΠΎΠΉ ΠΏΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΠΌΠ΅Π΅Ρ Π½Π° ΡΠ²ΠΎΠ΅ΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. Π ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ. Π Π»ΡΠ±ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΠ· ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°ΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. Π’ΡΡ Ρ ΡΠ΄Π΅Π»Π°Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΠΌΠ°ΡΠΊΡ. ΠΠ°ΠΆΠ½ΠΎ ΡΠΎΠ±Π»ΡΠ΄Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΡ ΠΏΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π² Π²Π°ΡΠ΅ΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ. Π‘ΡΠ°Π½Π΄Π°ΡΡΡ ΠΎΠ±Π»Π΅Π³ΡΠ°ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΡΠΊΠΎΠ½ΠΎΠΌΡΡ Π²ΡΠ΅ΠΌΡ, ΠΎΠ±Π»Π΅Π³ΡΠ°ΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ ΡΡΠΎ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅. ΠΠ΅ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΠΈΠΊΠ° ΠΈ ΠΊΡΠ»ΡΡΡΡΠ° ΠΏΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°, ΠΏΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΠΈ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π»ΡΡΡΠ΅ ΠΈ Π±ΡΡΡΡΠ΅Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°.
ΠΠ°ΠΊΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ:
1. Π¦Π΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅
2. ΠΠ΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅(ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅)
Π ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ ΠΊΠΎΠ΄ Ρ
ΡΠ°Π½ΠΈΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. ΠΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌΡ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΌΠΈΠ½ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ. Π£ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π΅Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π° Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΏΠΈΡ Π΄Π°Π½Π½ΡΡ
Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°. Π ΡΠ»ΡΡΠ°Π΅ Π²ΡΡ
ΠΎΠ΄Π° ΠΈΠ· ΡΡΡΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. ΠΡΠΎΡΠΎΠΉ ΠΌΠΈΠ½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π² ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄ΠΎΡΡΠΏΠ° ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠ΅ΡΡΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ.
Π ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ, ΠΊΡΠΎΠΌΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π΅ΡΡΡ ΡΠ²ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΡΡΡΡΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
Π ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΏΠΎΡΡΠ°Π²ΠΊΠ΅ Git ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ CVS (ΠΈΠΌΠΏΠΎΡΡ ΠΈ ΡΠΊΡΠΏΠΎΡΡ, ΡΠΌΡΠ»ΡΡΠΈΡ CVS-ΡΠ΅ΡΠ²Π΅ΡΠ°) ΠΈ Subversion (ΡΠ°ΡΡΠΈΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈΠΌΠΏΠΎΡΡΠ° ΠΈ ΡΠΊΡΠΏΠΎΡΡΠ°). Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΈ ΡΠΊΡΠΏΠΎΡΡΠ° Π²Π½ΡΡΡΠΈ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΡ β Π°ΡΡ ΠΈΠ²Ρ ΡΠ΅ΡΠΈΠΉ Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠΎΡΠΌΠ°ΡΠ°Ρ .tar.gz ΠΈ .tar.bz2.
Fork β ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅, ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΠΎΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°. ΠΡΠΎ Π΄Π°ΠΆΠ΅ Π½Π΅ git-ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ, Π°, ΡΠΊΠΎΡΠ΅Π΅, ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΎ-ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΠΈΠ΄Π΅Ρ. Clone β ΡΡΠΎ Π½Π΅ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ fork. ΠΠ»ΠΎΠ½ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΊΠΈ.
Branch, ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ, β ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ± Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ Π² ΠΈΡΠΎΠ³Π΅ Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ΅ΡΠΊΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π Π°Π±ΠΎΡΠ΅Π΅ Π΄Π΅ΡΠ΅Π²ΠΎ (ΡΠ°Π±ΠΎΡΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, ΡΠ°Π±ΠΎΡΠ΅Π΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ) β ΡΡΠΎ Π΄Π΅ΡΠ΅Π²ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ.
ΠΠ½Π΄Π΅ΠΊΡ (ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², staging area) β ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ Π±ΠΎΠ»ΡΡΠΎΠΉ Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» .git/index, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΊΠ°Π·Π°Π½Ρ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ, ΠΈΡ SHA1, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ ΠΈ ΠΈΠΌΠ΅Π½Π°. ΠΡΠΎ Π½Π΅ ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Ρ ΠΊΠΎΠΏΠΈΡΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ².
Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ HEAD β ΡΡΠΎ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅.
ΠΠ΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΡΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅ ΠΎΡ ΡΠ΅ΠΌΡ: ΠΠ°ΡΠ΅ΠΌ Ρ ΡΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ²Π΅Π» ΡΠΈΡΠ°Ρ?
ΠΡΠ²Π΅Ρ ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ. Π§ΡΠΎΠ±Ρ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π΄Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½ΡΠ΅ ΠΈ ΡΡΠ½ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ.
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡ
ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ git Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ:
1. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ git Π½Π° Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
2. ΠΠ°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π΅Ρ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
3. ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π°Ρ Π°ΠΊΠΊΠ°ΡΠ½Ρ Π½Π° GitHub
4. Π‘ΠΎΠ·Π΄Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°
5. ΠΠ°ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΉΠ» README.MD.
6. Π ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ, ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
7. Π€ΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
8. ΠΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° GitHub
9. ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π°ΠΊΠΊΠ°ΡΠ½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°
10. ΠΡΠ΄Π°ΡΡ ΠΈΠΌ ΡΡΡΠ»ΠΊΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡ
1. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° git
Π Linux:
sudo apt-get update && sudo apt-get upgrade #ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π΄ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ
sudo apt-get install git #ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° git
Π Windows:
Git Π΄Π»Ρ Windjws >>>
1. ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΊΠ»ΠΈΠΊΠ½ΡΡΡ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΊΠΈ Π½Π° ΠΏΠ°ΠΏΠΊΠ΅ Π² ΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ΅ Windows ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΡΠΊΡΡΡΡ Β«Git Bash HereΒ». Git Bash Here β ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΎΡΡΡΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» git Π·Π΄Π΅ΡΡ.
Π ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git --version #Π²ΡΠ²ΠΎΠ΄ Π²Π΅ΡΡΠΈΠΈ
ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²Π΅ΡΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ git.Π Linux,(Ctrl+Alt+T β ΡΠ΅ΡΠΌΠΈΠ½Π°Π», Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅ Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄ΡΡΠ³ΠΈΠ΅ Π³ΠΎΡΡΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ) ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅
git --version
Π ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π²ΡΠ²Π΅Π΄Π΅ΡΡΡ Π²Π΅ΡΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ git.
2.ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Git
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅:
Π’ΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΏΠΎΠΌΡΠ½ΡΡΡ, ΡΡΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Git Π²Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΠ΅ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΡΠΎΠ²Π½ΡΡ
.
Π’ΠΎ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ(Π½Π΅ ΡΠΈΡΡΠ΅ΠΌΡ git, Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ). ΠΡΡΠ³ΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°Π»Π΅Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π΅Π»Π°ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ(Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ). ΠΡ Π΄Π΅Π»Π°Π΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π°Ρ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. ΠΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π΅ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎ ΡΠ²ΠΎΠΈΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ.
Π Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Windows git-bash.
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ± ΠΎΡΠ»ΠΈΡΠΈΡΡ
Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. Π£ΠΏΠΎΠΌΡΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ
ΠΏΡΡΠΈ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ ΠΈ ΠΏΠ°ΠΏΠΊΠ°ΠΌ. Π Windows ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ / β ΡΠ»Π΅Ρ, Π° Π² Linux ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΡΠ»Π΅Ρ \. Π₯ΠΎΡΡ Π² Windows Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ»Π΅ΡΠ°.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π΅ΠΌΠ΅ΠΉΠ»:
git config --global user.name "My Name"
git config --global user.email [email protected]
Π§ΡΠΎΠ±Ρ Π²Π²Π΅ΡΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Π΅Π³ΠΎ ΠΏΠ°ΠΏΠΊΡ ΠΈ ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ ΡΠΎ ΠΆΠ΅ Π±Π΅Π· —global:
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°.
git config --global core.editor emacs #ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ emacs
#ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ Linux.ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π΅ emacs, a vi ΠΈΠ»ΠΈ nano ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ Π½Π° Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅.
Π Windows, ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ notepad++.
For x64 Windows change to: git config —global core.editor «‘C:/Program Files (x86)/Notepad++/notepad++.exe’ -multiInst -notabbar -nosession -noPlugin»
ΠΠ»Ρ x64 Windows Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ(ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠΏΠΈΡΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΠΏΡΡΡ):
git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ git Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΠ°ΠΉΠ»Π°Ρ .
Git ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ 4 ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ ΡΠ°ΠΉΠ»Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ(Π·Π΄Π΅ΡΡ Π² Linux):
Π€Π°ΠΉΠ» Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° .gitconfig.
ΠΠ°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ, ΡΠ°ΠΉΠ» Π²Π°ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ .gitconfig ΡΠ°ΠΉΠ» Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² ~/.gitconfig.
ΠΡΠΎΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π² $ XDG_CONFIG_HOME/git/config ΠΈΠ»ΠΈ $HOME/.config/git/config.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ: .git/config
cat .git/config #ΠΏΡΠΎΡΠΌΠΎΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠ» Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ git, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π² ΡΠ°ΠΉΠ»Π΅ Π½Π°Π΄ Π½ΠΈΠΌ.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½Π°Ρ Π΄Π»Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π‘ΡΡΠ»ΠΊΠ° Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ >>>
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ
#Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ Π²ΡΠ΅Ρ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
git config --system --list
git config --system --edit
#Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
git config --global --list
git config --global --edit
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ git:
git config --list #Π²ΡΠ²Π΅ΡΡΠΈ Π½Π° ΡΠΊΡΠ°Π½ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ.
ΠΡΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ Π±ΠΎΠ»ΡΡΠΎΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ»ΠΈΡΡΡΠ²Π°ΡΡ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΡΠ΅Π»ΠΎΠΊ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΈΠ»ΠΈ Β«pg upΒ», Β«pg dnΒ». ΠΠ»Ρ Π²ΡΡ ΠΎΠ΄Π° ΠΊΠ»Π°Π²ΠΈΡΠ° q.
#ΠΊΠ°ΠΊΠ°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, Π³Π΄Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π°:
git config --list --show-origin
ΠΠ»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ? ΠΠ΅Π΄Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ UI.
Π§Π°ΡΡΠΎ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎ-ΡΠΎ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°Π±ΠΎΡΠ° ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄ Π²Ρ ΡΠ°ΠΌΠΈ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ. ΠΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ. ΠΠΎΡΠ΅ΠΌΡ? ΠΠ° ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²Π°Ρ UI ΠΌΠΎΠΆΠ΅Ρ ΠΈ Β«Π½Π΅ Π·Π½Π°ΡΡΒ» ΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. UI ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΎΡΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΡΠ°ΠΊΠΎΠ²ΠΎΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π²Π²ΠΈΠ΄Ρ ΡΠ²ΠΎΠ΅ΠΉ Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΠ° ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π² ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΡΠ΅ ΠΈΡ
Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ. ΠΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΡΠΏΡΠ°Π²ΠΊΡ ΠΏΠΎ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅. Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π½Π°Π½ΠΈΡ, Π±Π΅Π· ΠΊΠΎΡΠΎΡΡΡ
Π½ΠΈΠΊΡΠ΄Π°, Π»ΡΡΡΠ΅ ΡΡΠ²Π°ΠΈΠ²Π°ΡΡΡΡ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅.
ΠΠΎΠΌΠ°Π½Π΄Ρ Git(ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅)
git ΠΎΠΏΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ
ΠΏΡΠΈΠΌΠ΅Ρ:
git branch -d <name> # ΡΠ΄Π°Π»ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ name
git branch -d bugFix00 #ΡΠ΄Π°Π»ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ bugFix00.
ΠΠΏΡΠΈΠΈ:
-C β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΏΠ°ΠΏΠΊΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠ°ΠΏΠΊΠΈ;
-c ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ=Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ;
-p β ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°ΡΡ Π²Π΅ΡΡ Π²ΡΠ²ΠΎΠ΄ Ρ ΠΏΠΎΠΌΠΎΡΡΡ less;
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
1. ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ Π² ΠΏΠ°ΠΏΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
cd Π²Π°ΡΠ°_ΠΏΠ°ΠΏΠΊΠ° #ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Π² ΠΏΠ°ΠΏΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π²Π°ΡΠ°_ΠΏΠ°ΠΏΠΊΠ°
2.
git init #ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
3.
git add . #ΡΡΡ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π²ΡΠ΅.
ΠΠ°ΠΏΠΊΡ. Π’ΠΎΡΠΊΠ° ΠΏΠΎΡΠ»Π΅ add ΠΎΡΠ΄Π΅Π»Π΅Π½Π½Π°Ρ ΠΏΡΠΎΠ±Π΅Π»ΠΎΠΌ.ΠΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ»
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ
git add ΠΈΠΌΡ.ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠΌ β ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ°ΠΉΠ»Π°.
ΠΠ»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠ΅Π³ΠΎ Π² ΠΏΠ°ΠΏΠΊΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git add -A
4. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ commit
git commit #ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
-m Β«ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉΒ» #Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΡ. ΠΠ°ΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΡΠΆΠ΅ Ρ ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΡΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΌ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΈΠΌΡ ΠΊΠ»ΡΡΠ°, Π²ΠΌΠ΅ΡΡΠΎ Π΅Π³ΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π²ΠΌΠ΅ΡΡΠΎ -m Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ —message=Β«ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉΒ»
git commit --message="$ΠΠ°Ρ ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ"
Π’ΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΡΠΊΠΈΠ΅ Π±ΡΠΊΠ²Ρ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ , Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ. ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈΠ»ΠΈ IDE, ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅, ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² git. ΠΡΡΠ³ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ: Windows Β«Π½Π΅ Π»ΡΠ±ΠΈΡΒ» ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΡΠ΅ Π°ΠΏΠΎΡΡΡΠΎΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π·Π°ΠΊΠ»Π΅ΡΠ΅Π½ Π² ΠΊΠ°Π²ΡΡΠΊΠΈ. ΠΠ° Linux Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°ΠΏΠΎΡΡΡΠΎΡΡ ΠΏΡΠΈ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ.
5.
git show #ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ
6.
git status #ΠΏΡΠΎΡΠΌΠΎΡΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ git
ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ β ΠΊΠ°ΠΊΠ°Ρ Π²Π΅ΡΠΊΠ° ΡΠ΅ΠΊΡΡΠ°Ρ.
ΠΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ ΠΈ ΡΠ΄. ΠΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ(Π² staging area).
ΠΠ΅ΡΠΊΠΈ. Branches
ΠΠ΅ΡΠΊΠ°(branch) β ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ.
git branch ΠΈΠΌΡΠΠ΅ΡΠΊΠΈ #Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½Π° Π²Π΅ΡΠΊΠ° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ "ΠΈΠΌΡΠΠ΅ΡΠΊΠΈ"
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΄Π»Ρ ΠΈΠΌΠ΅Π½ΠΈ Π»Π°ΡΠΈΠ½ΡΠΊΠΈΠ΅ Π±ΡΠΊΠ²Ρ. Π’ΡΡ Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠΎΠ³Π΄Π° ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π²Π΅ΡΠΊΡ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΎΡΡΠ°Π»Π°ΡΡ Π²Π΅ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° Π²ΡΠ΄Π΅Π»Π΅Π½Π° Π΄ΠΎ ΡΡΠΎΠ³ΠΎ. ΠΡ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ master. Π Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΌΡ ΡΠΊΠ°ΠΆΠ΅ΠΌ git commit, ΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Π²Π΅ΡΠΊΠ° master. ΠΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ.Π‘ΠΎΠ²Π΅Ρ: Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½ΡΠΆΠ½ΠΎ Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ, ΠΏΠΎΡΠΎΠΌ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π½Π΅Ρ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ commit.
1. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π²Π΅ΡΠΊΡ:
git branch feature #ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ "feature" Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
2. ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ Π½Π° ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π²Π΅ΡΠΊΡ:
git checkout feature#Π²ΡΠ±ΠΎΡ Π²Π΅ΡΠΊΠΈ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ "feature" Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ
3. ΠΠ΅Π»Π°Π΅ΠΌ commit:
git commit
Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ Π²ΡΠΎΡΠ°Ρ Π²Π΅ΡΠΊΠ° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ feature.
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ(merge).
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ ΠΎΡ Π΄Π²ΡΡ
ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ, ΠΎΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ ΠΈ Π²Π΅ΡΠΊΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ git.
1. ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ Π½Π° Π²Π΅ΡΠΊΡ master
2. Π‘ΠΌΠΎΡΠΈΠΌ ΠΊΠ°ΠΊΠ°Ρ Π²Π΅ΡΠΊΠ° ΡΠ΅ΠΊΡΡΠ°Ρ
3. ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌ Π²Π΅ΡΠΊΠΈ
git merge feature #ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ Ρ Π²Π΅ΡΠΊΠΎΠΉ feature
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎ Π΄ΡΡΠ³ΠΎΠΌΡ. ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π²Π΅ΡΠΊΡ feature ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π΅Ρ Ρ Π²Π΅ΡΠΊΠΎΠΉ master
1.
git checkout feature #Π²ΡΠ±ΠΎΡ Π²Π΅ΡΠΊΠΈ feature
2.
git merge master #ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ
, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ feature c Π²Π΅ΡΠΊΠΎΠΉ master.ΠΡΠΎΡΠΌΠΎΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π²Π΅ΡΠΎΠΊ:
git branch -v -a #ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Π²Π΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ
git diff --cached #ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈΡΡ Π² stage
stash β ΡΡΠ΅ΠΊ, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅
ΠΠ΅ ΠΏΡΡΠ°ΠΉΡΠ΅ ΡΠΎ stage, ΡΡΠΎ Π½Π΅ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅.
ΠΠΎΠΌΠ°Π½Π΄Π°
git stash
ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ Π²ΡΠ΅ Π½Π΅ Π·Π°ΠΊΠΎΠΌΠΈΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Π΄ΠΎ HEAD.git stash Π±Π΅ΡΠ΅Ρ Π²Π°ΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈ Π½Π΅ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΊ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΈΡ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ±ΠΈΡΠ°Π΅Ρ ΠΈΠ· ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ.
Π‘ΡΠ΅Ρ(stash) ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠΈΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±Ρ ΡΠΏΡΡΡΠ°ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΡΠ΅ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΏΠΎΡΠΎΠΌΡ ΠΎΠ½ ΠΈ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ stash, Π² ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π΅ β ΠΏΡΡΡΠ°ΡΡ, ΠΏΡΠΈΠΏΡΡΡΡΠ²Π°ΡΡ.
git stash apply #ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ
git stash list #Π²ΡΠ²Π΅ΡΡΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
git stash show #Π²ΡΠ²Π΅ΡΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
git stash drop #ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠΏΠΈΡΠΊΠ΅
git stash pop # [apply] + [drop]
git stash clear #ΠΎΡΠΈΡΡΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
git stash drop# ΡΠ΄Π°Π»ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ git stash
git stash drop stash@{5}#ΡΠ΄Π°Π»ΠΈΡ git stash ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ 5
ΡΠΈΡ 1.
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΏΠ°ΠΏΠΊΠΈ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π΄Π»Ρ git.
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² staging area. ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ(git commit).
ΠΡΠΏΡΠ°Π²ΠΊΠ° Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ(git push).
ΠΠ° Π΄Π°Π½Π½ΠΎΠΉ ΡΡ
Π΅ΠΌΠ΅ Π½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΡΡΡΠ½ΠΎΡΡΡ stash.
ΡΠΈΡ 2.
ΠΠ° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ΅ ΡΠΈΡ 2. ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄ add, commit all, commit, reset, git reset head, git update index.
Untacked files β Π½Π΅ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ.
Working tree β Π²Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ°Ρ ΠΏΠ°ΠΏΠΊΠ°
Index β ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²
Commit β ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠ΄Π΅ΡΡ Π½ΡΠΆΠ½ΠΎ Π²Π½Π΅ΡΡΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ½ΠΎΡΡΡ. ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ Π²Π°ΡΠ΅ΠΌΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠΎ ΡΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ Π²ΠΈΠ΄ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ. ΠΡΠΎ ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌ ΡΠ°Π±ΠΎΡΡ git c ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΎΡΠ΅ΠΊ, ΠΏΠΎΠ΄ Β«ΡΠ°Π·Π½ΡΠΌ ΡΠ³Π»ΠΎΠΌΒ». ΠΠΎΠΊΠ°Π·Π°Π½ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΉ ΡΠΈΠΊΠ» ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ:
cherry-pick
reset
revert
rebase
merge
ΠΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. Π Π°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ ΠΈΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ
ΠΠ°Π»Π΅Π΅ Ρ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Ρ ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΈ Π²Π°ΡΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΡΠΎΠΊΠΎΠ» [url]https://,[/url]
ΡΠΎ Π΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ Π±ΡΠ°ΡΠ·Π΅ΡΠ΅(chrome, mozilla, opera ΠΈ Π΄ΡΡΠ³ΠΈΡ
).
GitHub.com >>>
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ GitHub Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π°, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° GitHub, Π΅ΡΠ»ΠΈ Π²Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΠ΅ Π½Π΅ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΈΠ»ΠΈ
ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π½ΡΠΆΠ½ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π£Π·Π½Π°ΡΡ ΠΊΠ°ΠΊ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠΌ ΡΠ°ΠΉΡΠ΅ GitHub.
ΠΠ΅ΡΠ΅Π΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Ρ Π²Π°Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
Π ΠΏΠ°ΠΏΠΊΠ΅ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅:
git init #ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
git add -A
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ(Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ GitHub) ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅:
git remote add origin https://github.com/ΠΈΠΌΡ_Π½ΠΈΠΊ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΠΌΡΠ Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.git
Β«ΠΈΠΌΡ_Π½ΠΈΠΊ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΒ» β Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½ΠΈΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Β«ΠΠΌΡΠ Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΒ» β Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ ΠΈΠΌΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°ΡΠ°Π½Π΅Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° GitHub
ΠΠΎΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΡΠΈ Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ:
git remote -v
ΠΡΠ²ΠΎΠ΄:
origin [url]https://github.com/ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΈΠΌΡ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.git[/url] (fetch)
origin [url]https://github.com/ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΈΠΌΡ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.git[/url] (push)
git remote show #ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Π΅ΡΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
ΠΠ±ΡΡΠ½ΠΎ ΡΠ°ΠΌ ΠΎΠ΄Π½Π° Π²Π΅ΡΠΊΠ° origin.
Π’ΠΎ Π΅ΡΡΡ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΌΠ° Π²Π΅ΡΠΊΠ°, Π° Π΅Ρ ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ, Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°ΡΡ Π΅ΡΠ΅ ΠΎΠ΄Π½Ρ Π²Π΅ΡΠΊΡ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
git remote add <ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅_ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ> [email protected]:ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.git
git remote add <ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏ> ΠΏΡΠΎΡΠΎΠΊΠΎΠ»@github.com:ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.git
ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏ β ΠΈΠΌΠ΅Π΅ΡΡΡ Π² Π²ΠΈΠ΄Ρ ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ ΠΈΠΌΡ ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°Π½ΠΎ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ.
ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ β ΠΈΠΌΠ΅Π΅ΡΡΡ Π² Π²ΠΈΠ΄Ρ ΠΈΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. Π’ΠΎ Π΅ΡΡΡ ΠΈΠΌΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
git remote set-url origin [url]https://ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ@github.com/ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/test.git[/url] #ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΡΡ
git pull origin master #Π·Π°Π±ΡΠ°ΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠ· Π²Π΅ΡΠΊΠΈ origin Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ master
Π’ΠΎΠ»ΡΠΊΠΎ Π΄Π°Π½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°Π±ΠΈΡΠ°Π΅Ρ ΠΎΠ΄Π½Ρ Π²Π΅ΡΠΊΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΎΠ½Π° ΡΠ»ΠΈΠ²Π°Π΅Ρ(ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ, merge) Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Ρ Π²Π°ΡΠΈΠΌΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ. ΠΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΈ Ρ Π²Π°Ρ ΡΠ²ΠΎΠΈΡ Π½Π°ΡΠ°Π±ΠΎΡΠΎΠΊ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΠΊΠ° Π½Π΅Ρ.
git remote -v #ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ ΠΊ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
git clone --recursive https://github.com/ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΈΠΌΡ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.git #ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
git clone --recursive https://github.com/ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.git LΠΈΠΌΡ_Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ_ΠΏΠ°ΠΏΠΊΠΈ
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΠ°ΠΏΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ LΠΈΠΌΡ_Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ_ΠΏΠ°ΠΏΠΊΠΈ.
ΠΠ΅ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Β«github.com/ΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΈΠΌΡ_ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ_ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.gitΒ» ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΈΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ Β«LΠΈΠΌΡ_Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ_ΠΏΠ°ΠΏΠΊΠΈΒ».
ΠΠ΄Π΅ΡΡ Ρ Π½Π°ΠΏΠΈΡΠ°Π» ΠΏΡΠ΅ΡΠΈΠΊΡ L ΠΏΠ΅ΡΠ΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ°ΠΏΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΎΡΠ»ΠΈΡΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠ°ΠΏΠΊΡ ΠΎΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅.
gitk #ΡΡΠΈΠ»ΠΈΡΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΈ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π½Π° GitHub
[url]https://greenido.files.wordpress.com/2013/07/git-local-remote.png?w=696&h=570[/url]
ΠΠ· Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΈ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. ΠΠΎΠΊΠ°Π·Π°Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ Π΄Π»Ρ ΠΊΡΠ°ΡΠΊΠΎΡΡΠΈ ΠΈ ΡΡΠ½ΠΎΡΡΠΈ.
ΠΠ°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π°Ρ
ΠΎΠ΄ΡΡΠΈΠΉΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ°Π½ΡΠΈΠΈ β ΡΡΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π΅ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° GitHub ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ
, Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ. ΠΠ°ΠΌ Π΄Π°ΠΆΠ΅ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ. Π£ Π²Π°Ρ Π±ΡΠ΄Π΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. Π’Π°ΠΊΠΈΠ΅ ΠΆΠ΅ Π²Π΅ΡΠΊΠΈ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ ΠΈΡ
ΠΈ ΡΠ΄. Π’ΠΎ Π΅ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΠΊΠ°ΠΊ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ.
ΠΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΎΠΌ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΡ
Π½Π° ΡΠ΅ΡΠ²Π΅Ρ.
Π§ΡΠΎΠ±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ΠΡ Ρ
ΠΎΡΠΈΡΠ΅ ΡΡΠΎΠ±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ ΠΈ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ?
ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ .gitignore.
touch .gitignore #ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ» .gitignore
Π ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ cmd windows:
type nul > .gitignore #ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ» .gitignore
ΠΡΡΡΠΎΠΉ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» .gitignore Π²Π°ΠΌ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄Π°Π΅Ρ. Π§ΡΠΎΠ±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ»ΠΈΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ Π² ΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΏΡΠ°Π²ΠΈΠ»Π°.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» .gitignore Ρ GitHub. Π’Π°ΠΌ Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΡΠ°Π±Π»ΠΎΠ½Ρ .gitignore Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ².
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ gitignore >>>
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°ΠΉΠ» .gitignore Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
Π ΡΠ°ΠΉΠ»Π΅ .gitignore Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
git-scm.com/docs/gitignore
ΠΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° ΠΈ ΠΊΡΠ°ΡΠΊΠΎ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π΅Π³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
git config --global core.excludesfile ~/.gitignore_global #ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠ°ΠΉΠ» .gitignore_global
Π’Π΅ΠΏΠ΅ΡΡ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΊΡΠ΄Π° Π²Π΅Π΄Π΅Ρ ΡΡΡΠ»ΠΊΠ° ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ».
git config --get core.excludesfile #ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π³Π΄Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡΡ ΡΠ°ΠΉΠ» .gitignore_global
ΠΠ°ΠΌ ΠΎΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ». ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»(Π Windows cmd).
cd c:\ΠΏΡΡΡ\Π³Π΄Π΅\Π΄ΠΎΠ»ΠΆΠ΅Π½_Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡΡ_ΡΠ°ΠΉΠ» .gitignore_global
type nul > .gitignore_global #ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ» .gitignore_global
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» ΠΎΡΡΡΠ΄Π° >>>
ΠΡΠΊΡΠΎΠΉΡΠ΅ Π²Π°Ρ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ» .gitignore_global Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈ ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΡΠ΅ΠΊΡΡ ΠΈΠ· Π³ΠΎΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π² Π²Π°Ρ. Π‘ΠΎΡ
ΡΠ°Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ».
ΡΠΈΡ 3.
ΠΠ° Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄: git add, git commit, git push ΠΈ git fetch.
ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅:
git push -f #ΡΡΠ΅Π²Π°ΡΠΎ ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ Π΄Π°Π½Π½ΡΡ
ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π²Π΅ΡΠΊΠΎΠΉ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΠ΅Π»ΠΎΠ²Π΅ΠΊβ¦
git push --force #ΡΡΠ΅Π²Π°ΡΠΎ ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ Π΄Π°Π½Π½ΡΡ
ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π²Π΅ΡΠΊΠΎΠΉ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΠ΅Π»ΠΎΠ²Π΅ΠΊβ¦
git fetch #Π·Π°Π±ΠΈΡΠ°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
ΠΠΎΠΌΠ°Π½Π΄Π° fetch Π·Π°Π±ΠΈΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ Π² Π²Π°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π½ΠΎ Π½Π΅ ΡΠ»ΠΈΠ²Π°Π΅Ρ ΠΈΡ Ρ ΠΊΠ°ΠΊΠΈΠΌΠΈ-Π»ΠΈΠ±ΠΎ Π²Π°ΡΠΈΠΌΠΈ Π½Π°ΡΠ°Π±ΠΎΡΠΊΠ°ΠΌΠΈ ΠΈ Π½Π΅ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΡΠΎ, Π½Π°Π΄ ΡΠ΅ΠΌ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ.
git pull #Π±Π΅ΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ ΡΠ»ΠΈΠ²Π°Π΅Ρ ΠΈΡ
Ρ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΎΠΉ.
ΠΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ,
git pull
ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄:git fetch
ΠΈgit merge
.ΠΠΏΡΠΈΠΈ(ΠΊΠ»ΡΡΠΈ) -n, —dry-run #ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git ΠΈΠΌΠ΅ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΊΠ»ΡΡΠΈ. ΠΡΠΈ ΠΎΠΏΡΠΈΠΈ Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°.
Π’ΠΎ Π΅ΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π΅Ρ ΠΏΡΠΈ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ Π±Π΅Π· ΠΊΠ»ΡΡΠ΅ΠΉ -n, —dry-run
ΠΠΎΠ΄Π΅Π»ΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² Git:
ΠΠ»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ?
ΠΠ»Ρ Π»ΡΡΡΠ΅ΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΡΠΎΠΊΠ° ΡΠ°Π±ΠΎΡΡ(Workflow). ΠΠ»Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΠΈ. Π’ΠΎ Π΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΠ½ΡΡΠ°, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π»Π΅ΠΉ Π½Π΅ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ.
Central Workflow
Developer Branch Workflow
Feature Branch Workflow
Issue Branch Workflow
Forking Workflow
Patch Workflow
Central Workflow (ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ) Π² ΡΡΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ Β«Π²Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΠΌΡ ΠΆΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Ρ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π²ΡΡΠ΅ΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΒ», Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ rebase ΠΈΠ»ΠΈ merge. (pull = fetch + merge ΠΈΠ»ΠΈ fetch + rebase, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²)
Feature Branching ΡΠ²Π»ΡΠ΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Central Workflow (ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠ°). ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Feature Branch: ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Π² Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ. ΠΠ»Π°Π²Π½Π°Ρ Π²Π΅ΡΠ²Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π½Π΅ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΊΠΎΠ΄. ΠΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ Π² ΡΡΠ΅Π΄Π°Ρ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ.
Gitflow Workflow
Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Gitflow Π±ΡΠ» Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π² Π±Π»ΠΎΠ³Π΅ ΠΠΈΠ½ΡΠ΅Π½ΡΠ° ΠΡΠΈΡΡΠ΅Π½Π° ΠΎΡ nvie Π·Π° 2010 Π³ΠΎΠ΄. Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Gitflow ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡΡΠΎΠ³ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ Π΄Π»Ρ Π²ΡΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠΎΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ Π½ΠΎΠ²ΡΡ
ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Feature Branch. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ ΠΎΡΠ΅Π½Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΠΎΠ»ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ Π²Π΅ΡΠ²ΡΠΌ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΠΊΠ°ΠΊ ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ.
Forking Workflow
Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Forking ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ
ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Β«ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΉΒ» ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ, ΠΎΠ½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ° Π΅ΡΡΡ Π½Π΅ ΠΎΠ΄ΠΈΠ½, Π° Π΄Π²Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git: ΡΠ°ΡΡΠ½ΡΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΉ.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ:
ΠΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°, ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎ Π΄Π»Ρ Π²ΡΠ΅Ρ
ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Git. ΠΠ°ΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Git, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ²ΡΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΊΡΠ»ΡΡΡΡΠ΅, ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ Π΄Π΅Π»ΠΎΠ²ΡΡ ΠΊΡΠ»ΡΡΡΡΡ. Π€ΡΠ½ΠΊΡΠΈΠΈ Git, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π²Π΅ΡΠΊΠΈ ΠΈ ΡΠ΅Π³ΠΈ, Π΄ΠΎΠ»ΠΆΠ½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ Π³ΡΠ°ΡΠΈΠΊ Π²ΡΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ. ΠΡΠ»ΠΈ Π²Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π·Π°Π΄Π°Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π΅ΡΠΊΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌ Π·Π°Π΄Π°ΡΠ°ΠΌ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ Git.
ΠΡΠ²ΠΎΠ΄Ρ:
ΠΡ Ρ Π²Π°ΠΌΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠ°Π±ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΡ git ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ.
Π Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΠΊΠΎΡΠ½ΡΠ»ΠΈΡΡ Π²ΠΎΠΏΡΠΎΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ git, ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ GitHub. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ git ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΡΠ°ΠΊ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎ. Π ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°. Π ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ±ΠΎ Π²ΡΠ΅ΠΌ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΡΡΠ°Ρ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π΄ΡΡΠ³ΠΈΡ
Π°Π²ΡΠΎΡΠΎΠ². Π§ΡΠΎ ΠΌΠ΅Π½Ρ ΠΏΠΎ Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ Π²ΠΎΡΡ
ΠΈΡΠ°Π΅Ρ Π² git, ΡΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Ρ
ΠΎΡΠΎΡΠ΅ΠΉ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΡ.
.gitignore. ΠΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Ρ
ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡ
ΠΠ°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΡΠΎΠ±Ρ Π² Π²Π°Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈ Π»ΠΈΡΠ½ΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ» .gitignore Π²ΡΡΡΠ½ΡΡ.
ΠΠ»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ IDE. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ NetBeans 10 Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° netbeans:
plugins.netbeans.org/plugin/50356/gitignore-io
ΠΠ»Π°Π΄Π΅Π»Π΅Ρ ΠΏΠ»Π°Π³ΠΈΠ½Π°: junichi11
ΠΠΈΡΠ΅Π½Π·ΠΈΡ: Apache License, Version 2.0
ΠΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ:
1. Π‘ΠΊΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΡΠ°ΠΉΠ» Π² ΠΏΠ°ΠΏΠΊΡ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ Π΄ΠΈΡΠΊΠ΅
2. ΠΡΠΊΡΡΠ²Π°Π΅ΠΌ IDE NetBeans
3. Tools/Plugin/Downloaded/Add Plugins
4. Π£ΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΏΡΡΡ ΠΊ ΠΏΠ»Π°Π³ΠΈΠ½Ρ Π½Π° Π²Π°ΡΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.
5. ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ IDE
ΠΠ»Ρ IDE Intellij Idea Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ Β«Add to gitignoreΒ»
plugins.jetbrains.com/plugin/7495—ignore
1.ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ Π½Π° ΡΠ°ΠΉΡ Ρ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠΌ
2. ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ Π²Π°ΡΡ Π²Π΅ΡΡΠΈΡ IDE
3. Π§ΠΈΡΠ°Π΅ΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ.
4. Π‘ΠΊΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΈΠ· IDE:
Preferences > Plugins > Browse repositoriesβ¦ > Search for «.ignore» > Install Plugin
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Β«Restart IdeaΒ».
git update-git-for-windows #ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ git Π΄Π»Ρ windows
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ:
ΠΠ½Π»Π°ΠΉΠ½ ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎ Git >>>
10 ΠΏΠΎΠ»Π΅Π·Π½ΡΡ
Git ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±Π»Π΅Π³ΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ >>>
ΠΡΠ»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ Git: 3 ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ >>>
ΠΠ°Π³ΠΈΡ Git. Π‘ΡΡΠ΄Π΅Π½ΡΡ. Stanford >>>
ΠΠ΄Π΅ΡΡ, Π½Π° Ρ
Π°Π±ΡΠ΅ Π΅ΡΡΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ ΠΎ Git Π°Π²ΡΠΎΡΠ° jsirex, Β«ΠΠΆΠ΅Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ GitΒ»
ΠΠ°ΠΊ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΎΡ Π²Π΅ΡΡΠΈΠΈ ΠΊ Π²Π΅ΡΡΠΈΠΈ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²Π½ΠΎΡΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°Π½Ρ Π΄Π»Ρ Π²Π΅ΡΡΠΈΠΈ git 2.0: >>>
ΠΠ΄Π΅ΡΡ Π΅ΡΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ git ΠΈ ΡΠΎ ΡΡΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ UI Π΄Π»Ρ git.
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΡΠ½Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρβ¦
ΠΠ²ΡΠΎΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ½ΡΠΆΠ΄Π΅Π½ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΡΠΊΡΡΡΡ ΠΈΡ
Π² ΡΠ΅ΡΠ½ΠΎΠ²ΠΈΠΊΠΈ Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ. ΠΡΠΎ Π½Π΅ ΡΠ»ΡΡΠΈΠΌΠ°ΡΡΠΌ. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, Π²Π°ΠΌ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΠ»ΠΎΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΌΠΎΡΡ, ΡΠΎ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°ΡΡ Π°Π²ΡΠΎΡΠ°.
Git — Book
2nd Edition (2014)
Download Ebook
The entire Pro Git book, written by Scott Chacon and Ben Straub and published by Apress, is available here. All content is licensed under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Print versions of the book are available on Amazon.com.>
- 1.1 Π ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
- 1.2 ΠΡΠ°ΡΠΊΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ Git
- 1.3 ΠΡΠ½ΠΎΠ²Ρ Git
- 1.4 ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ°
- 1.5 Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Git
- 1.6 ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Git
- 1.7 ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠΌΠΎΡΡ?
- 1.8 ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
- 2.1 Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
- 2.2 ΠΠ°ΠΏΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
- 2.3 ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
- 2.4 ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΎΡΠΌΠ΅Π½Ρ
- 2.5 Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ
- 2.6 Π Π°Π±ΠΎΡΠ° Ρ ΠΌΠ΅ΡΠΊΠ°ΠΌΠΈ
- 2.7 ΠΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ Π² Git
- 2.8 ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
- 3.1 Π Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠΈ Π² Π΄Π²ΡΡ ΡΠ»ΠΎΠ²Π°Ρ
- 3.2
ΠΠ°ΠΊ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ GitHub: Π±ΡΡΡΡΡΠΉ ΡΡΠ°ΡΡ / Π₯Π°Π±Ρ
Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ (DVCS) ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π·Π°ΠΌΠ΅ΡΠ°ΡΡ ΡΠΎΠ±ΠΎΠΉ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅. ΠΡΠ»ΠΈ Π²Ρ Π΅ΡΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΎΠ΄Π½Ρ ΠΈΠ· Π½ΠΈΡ β ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ.
Π ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ Π½Π°ΡΠ°ΡΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ git, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°ΠΉΡ github.com.
Π ΡΡΠ°ΡΡΠ΅ Π½Π΅ Π±ΡΠ΄ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ DVCS. Π’Π°ΠΊΠΆΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΡΠ°Π±ΠΎΡΠ° Ρ git, ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ Π΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Ρ
ΠΎΡΠΎΡΠΈΡ
ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΏΡΠΈΠ²Π΅Π΄Ρ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ.
ΠΡΠ°ΠΊ, ΡΠ°ΠΉΡ github.com ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ Ρ
ΠΎΡΡΠΈΠ½Π³Π° ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ git, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ wiki, ΡΠΈΡΡΠ΅ΠΌΠ° issue tracking-Π°, Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ code review ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. GitHub Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΌΡΠΌ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΎΠ΄Π°, ΠΎΠ±ΠΎΠ³Π½Π°Π² Sourceforge ΠΈ Google Code.
ΠΠ»Ρ open-souce ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΡΠ° Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ. ΠΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° ΠΏΠ»Π°ΡΠ½ΡΠΉ ΡΠ°ΡΠΈΡΠ½ΡΠΉ ΠΏΠ»Π°Π½:
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ. ΠΠ΄Π΅ΠΌ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ github.com/signup/free ΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΠ²ΠΎΠΈ Π΄Π°Π½Π½ΡΠ΅.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΌΡ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π½Π° Dashboard Π½Π°ΡΠ΅Π³ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ°:
Π‘Π΅ΠΉΡΠ°Ρ Ρ Π½Π°Ρ Π½Π΅Ρ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π»ΠΈΠ±ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π»ΠΈΠ±ΠΎ ΠΎΡΠ²Π΅ΡΠ²ΠΈΡΡΡΡ (fork) ΠΎΡ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΡΠΆΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ Π²Π΅ΡΡΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ°ΡΠ΅ΠΌ, ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π°Π²ΡΠΎΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (Pull request).
ΠΠΎ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ git ΠΈ Π½Π°ΡΡΡΠΎΠΈΠΌ Π΅Π³ΠΎ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΡΠΎΠΌ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² Windows, ΠΊΠ°ΡΠ°Π΅ΠΌ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ msysgit. ΠΡΠΎ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ git Π΄Π»Ρ Windows (Π΄Π°Π»Π΅Π΅ ΡΠ°ΡΠΊΠ°Π· Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΡΠΈΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΡΠΎΠΉ ΠΠ‘).
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄Π»Ρ MacOS X (eng)
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄Π»Ρ Linux (eng)
ΠΡΠΎΠ±Π»Π΅ΠΌ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ, ΠΏΡΠΎΡΡΠΎ Π²Π΅Π·Π΄Π΅ ΠΆΠΌΠ΅ΠΌ Next. ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠΌ ΠΌΠ΅Π½Ρ ΠΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ° Git Bash:
ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· Git Bash.lnk Π² ΠΏΠ°ΠΏΠΊΠ΅ Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ:
ΠΡΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΠ²ΠΎΠΈ Π΄Π°Π½Π½ΡΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΎΠ² ΡΡΡΠΎΠΊ:
git config --global user.name "Π²Π°ΡΠ΅ ΠΈΠΌΡ"
git config --global user.email "Π²Π°ΡΠ° ΠΏΠΎΡΡΠ°"
git config --global core.autocrlf true
git config --global core.safecrlf true
ΠΡΡΠ°ΡΠΈ, ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΏΡΠΎΠΉΡΠΈ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΊΡΡΡ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ git ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ. ΠΡΡΡ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡΡ Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΎΠ² ΠΈ Π΄Π°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π±Π°Π·ΠΎΠ²ΡΠ΅ Π½Π°Π²ΡΠΊΠΈ.
ΠΠ»Ρ ΡΠ΅Ρ
, ΠΊΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅Ρ gui β Π΄Π»Ρ Windows ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΊΠΈΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ git. ΠΠ²Π° ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
β ΡΡΠΎ SmartGit (ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ) ΠΈ TortoiseGit. ΠΠ±Π° Π½Π΅ΠΏΠ»ΠΎΡ
ΠΈΠ΅, ΠΈ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ β Π΄Π΅Π»ΠΎ Π²ΠΊΡΡΠ°. Π― ΠΎΠΏΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Ρ TortoiseGit.
ΠΠ»Ρ ΠΌΠ°ΠΊΠΎΠ² Π²ΡΠ±ΠΎΡ giu ΡΠΎΠΆΠ΅ ΠΈΠΌΠ΅Π΅ΡΡΡ.
- ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΎΡ GitHub β Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄ ΠΏΠΎΠΊΠ° Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΡΠΎΠ²Π°Ρ.
- GitX β Π»ΠΈΡΠ½ΠΎ ΠΌΠ½Π΅ Π½Π΅ ΠΏΡΠΈΠ³Π»ΡΠ½ΡΠ»ΡΡ
- GitBox β Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ mac-way, ΠΎΡΠ΅Π½Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ
ΠΠ°ΡΠ°Π΅ΠΌ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ code.google.com/p/tortoisegit/downloads/list. ΠΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π²Π΅Π·Π΄Π΅ ΠΆΠΌΠ΅ΠΌ Next.
Π’Π΅ΠΏΠ΅ΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΊ github ΠΈ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ°Ρ ΠΎΠ΄ΡΡΡ Π½Π° Dashboard, ΠΆΠΌΠ΅ΠΌ New Repository (https://github.com/repositories/new), Π²Π²ΠΎΠ΄ΠΈΠΌ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΆΠΌΠ΅ΠΌ Create Repository.
GitHub ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ ΡΡΠ΅ΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: SSH, HTTP ΠΈ Git Read-Only, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΡΡΡΠ»ΠΊΠΈ ΡΡΠ΅Ρ
Π²ΠΈΠ΄ΠΎΠ² Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ:
1. [email protected]:habrauser/Hello-world.git
2. [email protected]/habrauser/Hello-world.git
3. git://github.com/habrauser/Hello-world.git
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΡΠΎ Π·Π°Π±ΡΠ°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° git (ΡΡΠ΅ΡΡΡ ΡΡΡΠ»ΠΊΠ°). ΠΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΠΉ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ.
ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΌΡ Π·Π°Ρ
ΠΎΡΠΈΠΌ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° github, Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ HTTP ΠΈΠ»ΠΈ SSH.
Π Π°Π±ΠΎΡΠ° ΠΏΠΎ http Π½ΠΈΠΊΠ°ΠΊΠΈΡ
ΡΡΡΠ΄Π½ΠΎΡΡΠ΅ΠΉ Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅Ρ, Π² Π½ΡΠΆΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ°ΡΠΎΠ»Ρ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π½Π° github.
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SSH, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΠ°ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ: ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ. ΠΡΠ±Π»ΠΈΡΠ½ΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° Π½Π° github, Π° ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΡΠΎΡ ΡΠ°Π½Π΅Π½ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅.
ΠΠ»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ ssh-keygen, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ΄Π΅Ρ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅ Ρ git (ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ). ΠΡ ΠΆΠ΅ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ PuTTY (Π° ΡΠΎΡΠ½Π΅Π΅ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΊΡ puttygen, Π²Ρ ΠΎΠ΄ΡΡΡΡ Π² Π΅Π³ΠΎ ΡΠΎΡΡΠ°Π²). PuTTY β ΡΡΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SSH.
ΠΠ°ΡΠ°Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html). ΠΡΡΠ°ΡΠΈ, puttygen Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ (2007 Π³ΠΎΠ΄) ΠΈΠ΄Π΅Ρ Π² ΡΠΎΡΡΠ°Π²Π΅ TortoiseGit.
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ PuTTY, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ puttygen ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ:
ΠΠΌΠ΅ΠΌ Generate, Π΄Π²ΠΈΠ³Π°Π΅ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΊΡΡΡΠΎΡΠΎΠΌ ΠΌΡΡΠΈ, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΡ
Π°Π»Π³ΠΎΡΠΈΡΠΌΡ
ΠΠ²ΠΎΠ΄ΠΈΠΌ ΠΏΠ°ΡΠΎΠ»Ρ, Π·Π°ΡΠΈΡΠ°ΡΡΠΈΠΉ Π½Π°Ρ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π² ΠΏΠΎΠ»Π΅ Key passphrase, Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅, ΠΆΠΌΠ΅ΠΌ Save private key, ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ.
ΠΠ°Π»Π΅Π΅ ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ OpenSSH ΠΈΠ· ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ Β«Public key for pasting…Β» ΠΈ ΠΈΠ΄Π΅ΠΌ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π½Π°ΡΠ΅Π³ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° Π½Π° github (Account Settings) Π² ΡΠ°Π·Π΄Π΅Π» SSH Public Keys:
ΠΆΠΌΠ΅ΠΌ Add another public Key, Π²ΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π½Π°Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ:
Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Add key. ΠΡΠ΅, ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΡ Π³ΠΎΡΠΎΠ²Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ github ΠΏΠΎ ssh. ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Π·Π°Π±ΡΠ°ΡΡ Π½Π°Ρ ΠΏΡΡΡΠΎΠΉ ΡΠ΅ΡΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ TortioΡseGit. Π ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠΌ ΠΌΠ΅Π½Ρ ΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ° Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Git Cloneβ¦
Π ΠΏΠΎΠ»Π΅ Url Π²ΡΡΠ°Π²Π»ΡΠ΅ΠΌ SSH-Π°Π΄ΡΠ΅Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π² ΠΏΠΎΠ»Π΅ Load Putty Key ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΏΡΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ, ΠΆΠΌΠ΅ΠΌ OK.
Pageant Π·Π°ΠΏΡΠΎΡΠΈΡ Ρ Π½Π°c ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° (ΠΏΠΎΡΠΎΠΌ ΡΡΠΎΠ³ΠΎ Π΄Π΅Π»Π°ΡΡ Π½Π΅ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ)
Pageant β ΡΡΠΎ Π°Π³Π΅Π½Ρ SSH-Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² ΡΠΎΡΡΠ°Π²Π΅ PuTTY, ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π·Π°ΠΊΡΡΡΡΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ.
Π ΡΡΠ΅Π΅ Π²ΠΈΡΠΈΡ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅ΠΊ:
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° github. ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠ°ΠΉΠ» README (ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ README ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ github ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ β Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅)
ΠΠ°ΠΊΠΎΠΌΠΌΠΈΡΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
ΠΈ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π½Π° github:
Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Push
Π’Π΅ΠΏΠ΅ΡΡ Π·Π°ΠΉΠ΄Ρ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠ°ΠΉΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ wiki:
Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ issue tracking-a:
ΠΊΡΡΠ°ΡΠΈ, Π΄Π»Ρ ΡΠ΅Ρ
, ΠΊΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π² ΡΠ°Π±ΠΎΡΠ΅ EclipΡe β Π΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ mylyn-ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΡ Π΄Π»Ρ github:
ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ EGit:
ΠΠΎ ΡΡΡΠ»ΠΊΠ΅ Explore GitHub ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΊΠ°ΡΡ ΠΏΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Ρ Π΄ΡΡΠ³ΠΈΡ
ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π², Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠΎ ΡΠ·ΡΠΊΠ°ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ ΠΈ Ρ.ΠΏ.
Π Π΅Π·ΡΠΌΠΈΡΡΡ Ρ ΠΎΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΏΠ»Π°Π½ΠΈΡΡΡΡΠΈΠΉ Π½Π°ΡΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΈΠ»ΠΈ ΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡΡΠ½ΡΠΉ ΠΈ ΠΏΡΠΈΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΠΈΠΉΡΡ ΠΊ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ VCS, Π½ΠΎ Π½Π΅ Π·Π½Π°ΡΡΠΈΠΉ ΠΊΠ°ΠΊ Π½Π°ΡΠ°ΡΡ, ΡΠΎ Π΅ΡΡΡ ΡΠΌΡΡΠ» ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ git, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°ΠΊΠΎΠΉ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΊΠ°ΠΊ github.com.
ΠΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ git:
code.google.com/p/msysgit git Π΄Π»Ρ windows
www.syntevo.com/smartgit/index.html SmartGit
code.google.com/p/tortoisegit TortoiseGit
http://www.chiark.greenend.org.uk/~sgtatham/putty/ PuTTY
ΠΡΠΎ git Π½Π° ΡΡΡΡΠΊΠΎΠΌ:
habrahabr.ru/blogs/Git/106912 Β«Π£Π΄Π°ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ gitΒ» β ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ Ρ
ΠΎΡΠΎΡΠ΅ΠΉ Π°Π½Π³Π»ΠΎΡΠ·ΡΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ
githowto.com ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΊΡΡΡ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ git ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ
habrahabr.ru/blogs/Git/106912 Β«ΠΠΎΡΠ΅ΠΌΡ gitΒ» + ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
habrahabr.ru/blogs/development/68341 Β«Git Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΡΡΠΈΡ
Ρ SVNΒ» + ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
habrahabr.ru/blogs/Git/75990 Β«ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π² gitΒ» + ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅
progit.org/book/ru ΡΡΡΡΠΊΠΈΠΉ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΊΠ½ΠΈΠ³ΠΈ Β«Pro GitΒ» (ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½ΠΎ Π½Π΅ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ°)
habrahabr.ru/blogs/Git/123111 ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ-ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
los-t.livejournal.com/tag/git%20guts ΡΠΈΠΊΠ» ΠΏΠΎΡΡΠΎΠ² Β«Π²Π½ΡΡΡΠ΅Π½Π½ΠΎΡΡΠΈ gitΒ»
lib.custis.ru/%D0%9B%D0%B8%D0%BD%D1%83%D1%81_%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81_%D0%BE_GIT_%D0%BD%D0%B0_Google_Talks ΠΠΈΠ½ΡΡ Π’ΠΎΡΠ²Π°Π»ΡΠ΄Ρ ΠΎ git
habrahabr.ru/blogs/Git/80909 ΠΊΠ½ΠΈΠ³Π° Β«ΠΠΎΠ»ΡΠ΅Π±ΡΡΠ²ΠΎ gitΒ»
ΠΡΠΎ git Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ:
ΠΊΠ½ΠΈΠ³ΠΈ
Π²ΠΈΠ΄Π΅ΠΎ
Π΄ΡΡΠ³ΠΎΠ΅
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Git / Π₯Π°Π±Ρ
Π ΡΡΠΎΠΌ ΡΡΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½Π° ΡΡ Π΅ΠΌΠ° ΡΠ°Π±ΠΎΡΡ Git. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Ρ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ Git Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².ΠΡΡΠ΅ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΡΡΡΠΊΡΡΡΠ΅ Π³ΡΠ°ΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΡΠ½ΠΎΠ²Π°Π½ Git, ΠΈ Π½Π° ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΡΠΎΠ³ΠΎ Π³ΡΠ°ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Git. ΠΠ·ΡΡΠ°Ρ ΠΎΡΠ½ΠΎΠ²Ρ, Π²Ρ ΡΡΡΠΎΠΈΡΠ΅ ΡΠ²ΠΎΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π° Π½Π΅ Π½Π° Π³ΠΈΠΏΠΎΡΠ΅Π·Π°Ρ , ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΈΠ· ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ² Ρ API. ΠΡΠ°Π²ΠΈΠ»ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π» Git, ΡΡΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ ΠΈ ΡΡΠΎ ΠΎΠ½ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ.
Π’Π΅ΠΊΡΡ ΡΠ°Π·Π±ΠΈΡ Π½Π° ΡΠ΅ΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ Ρ Π΅Π΄ΠΈΠ½ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. ΠΠ½ΠΎΠ³Π΄Π° Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΡ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ Π³ΡΠ°ΡΠ°, Π»Π΅ΠΆΠ°ΡΠ΅Π³ΠΎ Π² ΠΎΡΠ½ΠΎΠ²Π΅ Git. ΠΠ°Π±Π»ΡΠ΄Π΅Π½ΠΈΡ ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Π³ΡΠ°ΡΠ° ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π½Π° Π½ΡΠΌ.
ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ Π΄Π»Ρ Π΅ΡΡ Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΠΎΠ±ΠΈΠ»ΡΠ½ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΠΌΠΎΠΌΡ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌΡ ΠΊΠΎΠ΄Ρ ΠΌΠΎΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Git Π½Π° JavaScript.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
~ $ mkdir alpha
~ $ cd alpha
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ alpha
~/alpha $ mkdir data
~/alpha $ printf 'a' > data/letter.txt
ΠΠ½ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ data. ΠΠ½ΡΡΡΠΈ ΠΎΠ½ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» letter.txt Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ Β«Π°Β». ΠΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ alpha Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
alpha
βββ data
βββ letter.txt
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
~/alpha $ git init
Initialized empty Git repository
git init Π²Π½ΠΎΡΠΈΡ ΡΠ΅ΠΊΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ .git ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π² Π½Π΅ΠΉ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ½ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π²ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Git ΠΈ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠΎ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ β Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΌΠ°Π³ΠΈΠΈ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡ ΡΠΈΡΠ°ΡΡ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ. Π’ΠΎ Π΅ΡΡΡ β ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΈΡΠ°ΡΡ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ, ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ»Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π’Π΅ΠΏΠ΅ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ alpha Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
alpha
βββ data
| βββ letter.txt
βββ .git
βββ objects
etc...
ΠΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ .git Ρ Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ Ρ Git. ΠΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉ ΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠ°ΠΉΠ»Ρ
~/alpha $ git add data/letter.txt
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ git add Π½Π° data/letter.txt. ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ Π΄Π²Π΅ Π²Π΅ΡΠΈ.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠ±-ΡΠ°ΠΉΠ» Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ .git/objects/. ΠΠ½ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΆΠ°ΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/letter.txt. ΠΠ³ΠΎ ΠΈΠΌΡ β ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Ρ ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Git Π΄Π΅Π»Π°Π΅Ρ Ρ ΡΡ ΠΎΡ Π° ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ 2e65efe2a145dda7ee51d1741299f848e5bf752e. ΠΠ΅ΡΠ²ΡΠ΅ Π΄Π²Π° ΡΠΈΠΌΠ²ΠΎΠ»Π° Ρ ΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΈΠΌΠ΅Π½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π² Π±Π°Π·Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²: .git/objects/2e/. ΠΡΡΠ°ΡΠΎΠΊ Ρ ΡΡΠ° β ΡΡΠΎ ΠΈΠΌΡ Π±Π»ΠΎΠ±-ΡΠ°ΠΉΠ»Π°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΠΎΡΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°: .git/objects/2e/65efe2a145dda7ee51d1741299f848e5bf752e.
ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° Π² Git ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ objects. ΠΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΡΠ°ΠΌ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΄Π°Π»ΠΈΡ data/letter.txt ΠΈΠ· ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ.
ΠΠΎ-Π²ΡΠΎΡΡΡ , git add Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ» Π² ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ½Π΄Π΅ΠΊΡ β ΡΡΠΎ ΡΠΏΠΈΡΠΎΠΊ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌΠΈ Git Π±ΡΠ»ΠΎ Π½Π°ΠΊΠ°Π·Π°Π½ΠΎ ΡΠ»Π΅Π΄ΠΈΡΡ. ΠΠ½ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² .git/index. ΠΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° Π΄Π°ΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ Ρ ΡΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ. ΠΠΎΡ ΡΠ°ΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add:
data/letter.txt 2e65efe2a145dda7ee51d1741299f848e5bf752e
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» data/number.txt ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ 1234.
~/alpha $ printf '1234' > data/number.txt
Π Π°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΏΠΈΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
alpha
βββ data
βββ letter.txt
βββ number.txt
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ» Π² Git.
~/alpha $ git add data
ΠΠΎΠΌΠ°Π½Π΄Π° git add ΡΠΎΠ·Π΄Π°ΡΡ Π±Π»ΠΎΠ±-ΡΠ°ΠΉΠ», Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Ρ ΡΠ°Π½ΠΈΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/number.txt. ΠΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡ Π·Π°ΠΏΠΈΡΡ Π΄Π»Ρ data/number.txt, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π½Π° Π±Π»ΠΎΠ±. ΠΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° git add:
data/letter.txt 2e65efe2a145dda7ee51d1741299f848e5bf752e
data/number.txt 274c0052dd5408f8ae2bc8440029ff67d79bc5c3
ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ data, Ρ ΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π°Π²Π°Π» ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add data. Π‘Π°ΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ data ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ.
~/alpha $ printf '1' > data/number.txt
~/alpha $ git add data
ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΠ·Π΄Π°Π» data/number.txt, ΠΎΠ½ Ρ ΠΎΡΠ΅Π» Π½Π°ΠΏΠΈΡΠ°ΡΡ 1, Π° Π½Π΅ 1234. ΠΠ½ Π²Π½ΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ½ΠΎΠ²Π° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ» ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠ± Ρ Π½ΠΎΠ²ΡΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ. ΠΠ½Π° ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ Π·Π°ΠΏΠΈΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ Π΄Π»Ρ data/number.txt Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π½Π° Π½ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠ±.
ΠΠ΅Π»Π°Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ
~/alpha $ git commit -m 'a1'
[master (root-commit) 774b54a] a1
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ a1. Git Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎ Π½ΡΠΌ. ΠΡ Π²ΡΠΊΠΎΡΠ΅ ΠΎΠ±ΡΡΡΠ½ΠΈΠΌ ΠΈΡ .
Π£ ΠΊΠΎΠΌΠ°Π½Π΄Ρ commit Π΅ΡΡΡ ΡΡΠΈ ΡΠ°Π³Π°. ΠΠ½Π° ΡΠΎΠ·Π΄Π°ΡΡ Π³ΡΠ°Ρ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΊΠΎΡΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡΡ. ΠΠ½Π° ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠ½Π° Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠ°
Git Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡΠΉ Π³ΡΠ°Ρ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠΎΡ Π³ΡΠ°Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΡΠ°Ρ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ ΡΠΈΠΏΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²: Π±Π»ΠΎΠ±Ρ ΠΈ Π΄Π΅ΡΠ΅Π²ΡΡ. ΠΠ»ΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΡΠ΅ΡΠ΅Π· git add. ΠΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ΅ΡΠ΅Π²ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΠΏΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ΅. ΠΠ΅ΡΠ΅Π²ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π΅ΡΠ΅Π²Π°, Π·Π°ΠΏΠΈΡΠ°Π²ΡΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ data ΠΏΡΠΈ Π½ΠΎΠ²ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅.
100664 blob 2e65efe2a145dda7ee51d1741299f848e5bf752e letter.txt
100664 blob 56a6051ca2b02b04ef92d5150c9ef600403cb1de number.txt
ΠΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π²ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° data/letter.txt. ΠΠ΅ΡΠ²Π°Ρ ΡΠ°ΡΡΡ Ρ ΡΠ°Π½ΠΈΡ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ°ΠΉΠ»Ρ. ΠΡΠΎΡΠ°Ρ β ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ°Π½ΠΈΡΡΡ Π² Π±Π»ΠΎΠ±Π΅, Π° Π½Π΅ Π² Π΄Π΅ΡΠ΅Π²Π΅. Π’ΡΠ΅ΡΡΡ β Ρ ΡΡ Π±Π»ΠΎΠ±Π°. Π§Π΅ΡΠ²ΡΡΡΠ°Ρ β ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°.
ΠΡΠΎΡΠ°Ρ ΡΡΡΠΎΡΠΊΠ° ΡΠ΅ΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ data/number.txt.
ΠΠΈΠΆΠ΅ ΡΠΊΠ°Π·Π°Π½ ΠΎΠ±ΡΠ΅ΠΊΡ-Π΄Π΅ΡΠ΅Π²ΠΎ Π΄Π»Ρ alpha, ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
040000 tree 0eed1217a2947f4930583229987d90fe5e8e0b74 data
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π΄Π΅ΡΠ΅Π²ΠΎ data.
Π ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠΌ Π³ΡΠ°ΡΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ root ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π΄Π΅ΡΠ΅Π²ΠΎ data. ΠΠ΅ΡΠ΅Π²ΠΎ data ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π±Π»ΠΎΠ±Ρ Π΄Π»Ρ data/letter.txt ΠΈ data/number.txt.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠ°
git commit ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π³ΡΠ°ΡΠ°. ΠΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° β ΡΡΠΎ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Π² .git/objects/:
tree ffe298c3ce8bb07326f888907996eaa48d266db4
author Mary Rose Cook <[email protected]> 1424798436 -0500
committer Mary Rose Cook <[email protected]> 1424798436 -0500
a1
ΠΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π΄Π΅ΡΠ΅Π²ΠΎ Π³ΡΠ°ΡΠ°. Π₯ΡΡ β Π΄Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π΄Π΅ΡΠ΅Π²Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΡΠ΅Π½Ρ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. Π’ΠΎ Π±ΠΈΡΡ, Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ alpha. ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΡΡΠΎΡΠΊΠ° β ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠ°ΠΏΡΠ°Π²ΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΊΠΎΠΌΠΌΠΈΡΠ° Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠ°ΠΊΠ°Ρ Ρ Π½Π°Ρ ΡΠ΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΠΊΠ°? Git ΠΈΠ΄ΡΡ Π² ΡΠ°ΠΉΠ» HEAD Π² .git/HEAD ΠΈ Π²ΠΈΠ΄ΠΈΡ:
ref: refs/heads/master
ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ HEAD ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° master. master β ΡΠ΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΠΊΠ°.
HEAD ΠΈ master β ΡΡΠΎ ΡΡΡΠ»ΠΊΠΈ. Π‘ΡΡΠ»ΠΊΠ° β ΡΡΠΎ ΠΌΠ΅ΡΠΊΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Git, ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
Π€Π°ΠΉΠ»Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅Π³ΠΎ ΡΡΡΠ»ΠΊΡ master, Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. Git ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» Π² .git/refs/heads/master ΠΈ Π·Π°Π΄Π°ΡΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ β Ρ ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠΌΠΌΠΈΡ:
74ac3ad9cde0b265d2b4f1c778b283a6e2ffbafd
(ΠΡΠ»ΠΈ Π²Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΡΡΠ΅Π½ΠΈΡ Π²Π±ΠΈΠ²Π°Π΅ΡΠ΅ Π² Git ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π²Π°Ρ Ρ ΡΡ a1 Π±ΡΠ΄Π΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΠΌΠΎΠ΅Π³ΠΎ. Π₯ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ β Π±Π»ΠΎΠ±ΠΎΠ² ΠΈ Π΄Π΅ΡΠ΅Π²ΡΠ΅Π² β Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎΠ»ΡΡΠ°ΡΡΡΡ ΡΠ΅ΠΌΠΈ ΠΆΠ΅. Π ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² β Π½Π΅Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡ Π΄Π°ΡΡ ΠΈ ΠΈΠΌΠ΅Π½Π° ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Π΅ΠΉ).
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² Π³ΡΠ°Ρ Git HEAD ΠΈ master:
HEAD ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° master, ΠΊΠ°ΠΊ ΠΈ Π΄ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠΎ ΡΠ΅ΠΏΠ΅ΡΡ master ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠ΅Π»Π°Π΅ΠΌ Π½Π΅ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½ Π³ΡΠ°Ρ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠΌΠΈΡΠ° a1. ΠΠΊΠ»ΡΡΠ΅Π½Ρ ΡΠ°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΏΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ Ρ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ, ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/letter.txt ΠΈ data/number.txt. ΠΠ½Π΄Π΅ΠΊΡ ΠΈ HEAD ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Ρ ΡΡΠΈ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π½Π° Π±Π»ΠΎΠ±Ρ, Π½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ΅ΠΊΡΡΠ° Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
~/alpha $ printf '2' > data/number.txt
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/number.txt Π½Π° 2. ΠΡΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ, Π½ΠΎ ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ HEAD Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
~/alpha $ git add data/number.txt
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ» Π² Git. ΠΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π±Π»ΠΎΠ±, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ 2, Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ objects. Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π΄Π»Ρ data/number.txt ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π½ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠ±.
~/alpha $ git commit -m 'a2'
[master f0af7e6] a2
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ. Π¨Π°Π³ΠΈ Ρ Π½Π΅Π³ΠΎ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΡΠ°Π½ΡΡΠ΅.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½ΠΎΠ²ΡΠΉ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡΠΉ Π³ΡΠ°Ρ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠ°ΠΏΠΈΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ Π΄Π»Ρ data/number.txt ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»Π°ΡΡ. Π‘ΡΠ°ΡΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ data ΡΠΆΠ΅ Π½Π΅ ΠΎΡΡΠ°ΠΆΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ data. ΠΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ-Π΄Π΅ΡΠ΅Π²ΠΎ data.
100664 blob 2e65efe2a145dda7ee51d1741299f848e5bf752e letter.txt
100664 blob d8263ee9860594d2806b0dfd1bfd17528b0ba2a4 number.txt
Π₯ΡΡ Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΡΡΠ°ΡΠΎΠ³ΠΎ Π΄Π΅ΡΠ΅Π²Π° data. ΠΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ root Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ ΡΡΠΎΠ³ΠΎ Ρ ΡΡΠ°.
040000 tree 40b0318811470aaacc577485777d7a6780e51f0b data
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
tree ce72afb5ff229a39f6cce47b00d1b0ed60fe3556
parent 774b54a193d6cfdd081e581a007d2e11f784b9fe
author Mary Rose Cook <[email protected]> 1424813101 -0500
committer Mary Rose Cook <[email protected]> 1424813101 -0500
a2
ΠΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ root. ΠΡΠΎΡΠ°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° a1: ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ. ΠΠ»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Git ΠΈΠ΄ΡΡ Π² HEAD, ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ Π΄ΠΎ master ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡ Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° a1.
Π ΡΡΠ΅ΡΡΠΈΡ , ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π°-Π²Π΅ΡΠ²ΠΈ master ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° Ρ ΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠΎΠΌΠΌΠΈΡ a2
ΠΡΠ°Ρ Git Π±Π΅Π· ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
Π‘Π²ΠΎΠΉΡΡΠ²Π° Π³ΡΠ°ΡΠ°:
β’ Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² Π²ΠΈΠ΄Π΅ Π΄Π΅ΡΠ΅Π²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π² Π±Π°Π·Π΅ Ρ ΡΠ°Π½ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° Π³ΡΠ°Ρ ΡΠ²Π΅ΡΡ Ρ. ΠΠΎΠΌΠΌΠΈΡ Π°2 ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π±Π»ΠΎΠ±, ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΉ Π΄ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π°1. Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, Π΅ΡΠ»ΠΈ Π²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΎΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΄ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π½Π΅ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, Π½Π΅Ρ Π΄Π΅ΡΠ΅Π²ΠΎ ΠΈ Π²ΡΠ΅ Π±Π»ΠΎΠ±Ρ ΠΈ Π½ΠΈΠΆΠ΅Π»Π΅ΠΆΠ°ΡΠΈΠ΅ Π΄Π΅ΡΠ΅Π²ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ. ΠΠ±ΡΡΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Git ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π·Π°Π½ΠΈΠΌΠ°Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°.
β’ Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΎΠΊ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
β’ Π‘ΡΡΠ»ΠΊΠΈ β Π²Ρ ΠΎΠ΄Π½ΡΠ΅ ΡΠΎΡΠΊΠΈ Π΄Π»Ρ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Π²Π°ΡΡ ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π°. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²ΡΠ²Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠΎΠ΄ΠΎΡΠ»ΠΎΠ²Π½ΠΎΠΉ, ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΎΠΉ Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Ρ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ ΡΠΈΠΏΠ° fix-for-bug-376. Git ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π²ΡΠΎΠ΄Π΅ HEAD, MERGE_HEAD ΠΈ FETCH_HEAD Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
β’ Π£Π·Π»Ρ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ objects/ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΡΡΡ, Π½ΠΎ Π½Π΅ ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΊΡΡΠΎΡΠ΅ΠΊ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Ρ ΡΠ°Π½ΠΈΡΡΡ Π³Π΄Π΅-ΡΠΎ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ objects.
β’ Π‘ΡΡΠ»ΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡ. ΠΠ½Π°ΡΠΈΡ, ΡΠΌΡΡΠ» ΡΡΡΠ»ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡΡ. ΠΠΎΠΌΠΌΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ master, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΈΠ»ΡΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ, Π½ΠΎ Π²ΡΠΊΠΎΡΠ΅ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠΌΠ΅Π½ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
β’ Π Π°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΏΠΈΡ ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΡΡΠ»ΠΊΠΈ, Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΡΠ°Π·Ρ. ΠΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ β Π½Π΅Ρ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π½Π΅Π΄Π°Π²Π½ΡΡ ΠΈΡΡΠΎΡΠΈΡ Π»Π΅Π³ΡΠ΅ Π²ΡΠ·Π²Π°ΡΡ, Π½ΠΎ ΠΈ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΎΠ½Π° ΡΠ°ΡΠ΅. ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΏΠ°ΠΌΡΡΡ Git ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΈΡΡΠ΅Π·Π°Π΅Ρ, ΠΈ Π΅Ρ Π½Π°Π΄ΠΎ ΡΡΠΈΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΆΡΡΡΠΊΠΈΠΌΠΈ ΡΡΡΠΊΠ°ΠΌΠΈ.
Π Π°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ Π»Π΅Π³ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π²ΡΠ·Π²Π°ΡΡ ΠΈΠ· ΠΈΡΡΠΎΡΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠΎΡΠ½Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡ Π²ΡΠ·ΠΎΠ² Π΄Π°ΠΆΠ΅ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Git. ΠΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΡΠΎ ΠΈ ΡΠ°ΠΌΠ°Ρ Π½Π΅ΠΏΠΎΡΡΠΎΡΠ½Π½Π°Ρ ΡΠΎΡΠΊΠ° Π² ΠΈΡΡΠΎΡΠΈΠΈ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π΄Π΅ΡΡΡΠΎΠΊ Π²Π΅ΡΡΠΈΠΉ ΡΠ°ΠΉΠ»Π°, Π½ΠΎ Git Π½Π΅ Π·Π°ΠΏΠΈΡΠ΅Ρ Π½ΠΈ ΠΎΠ΄Π½Ρ ΠΈΠ· Π½ΠΈΡ , ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΈ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ.
ΠΠΎΠΌΠΌΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ HEAD, ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ Π²ΡΠ·Π²Π°ΡΡ. ΠΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ. Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΡΡΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΈΠ·ΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ. Π Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ, HEAD β ΡΠ°ΠΌΠ°Ρ ΡΠ°ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠ°ΡΡΡ ΡΡΡΠ»ΠΊΠ°.
ΠΠΎΠΌΠΌΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π°Ρ ΡΡΡΠ»ΠΊΠ°, Π»Π΅Π³ΠΊΠΎ Π²ΡΠ·Π²Π°ΡΡ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡ ΡΡΡ Π²Π΅ΡΠΊΡ. ΠΠΎΠ½Π΅Ρ Π²Π΅ΡΠΊΠΈ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠ΅ΠΆΠ΅, ΡΠ΅ΠΌ HEAD, Π½ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΌΡΡΠ» Π½Π°Π·Π²Π°Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΡ.
Π‘Π»ΠΎΠΆΠ½ΠΎ Π²ΡΠ·Π²Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΡΡΠ»ΠΊΠΈ. Π§Π΅ΠΌ Π΄Π°Π»ΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡ ΠΎΠ΄ΠΈΡ ΠΎΡ ΡΡΡΠ»ΠΊΠΈ, ΡΠ΅ΠΌ ΡΡΠΆΠ΅Π»Π΅Π΅ Π΅ΠΌΡ Π²ΠΎΡΡΠΎΠ·Π΄Π°ΡΡ ΡΠΌΡΡΠ» ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠΎ ΡΠ΅ΠΌ Π΄Π°Π»ΡΡΠ΅ Π² ΠΏΡΠΎΡΠ»ΠΎΠ΅ ΠΎΠ½ ΠΈΠ΄ΡΡ, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ, ΡΡΠΎ ΠΊΡΠΎ-Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» ΠΈΡΡΠΎΡΠΈΡ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°.
ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ (check out) ΠΊΠΎΠΌΠΌΠΈΡΠ°
~/alpha $ git checkout 37888c2
You are in 'detached HEAD' state...
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ Π°2, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΅Π³ΠΎ Ρ ΡΡ. (ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΠΎ Π΄Π°Π½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ Π²Π°Ρ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ git log, ΡΡΠΎΠ±Ρ Π²ΡΡΡΠ½ΠΈΡΡ Ρ ΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π°2).
ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠ΅ΡΡΡΡΡ ΡΠ°Π³ΠΎΠ².
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Git ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ Π°2 ΠΈ Π³ΡΠ°Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ.
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΎ ΡΠ°ΠΉΠ»Π°Ρ Π² Π³ΡΠ°ΡΠ΅ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. Π ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΡΠΆΠ΅ Π΅ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π³ΡΠ°ΡΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ HEAD ΡΠΆΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π» Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ Π°2 ΡΠ΅ΡΠ΅Π· master.
Π-ΡΡΠ΅ΡΡΠΈΡ , Git Π΄Π΅Π»Π°Π΅Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΎ ΡΠ°ΠΉΠ»Π°Ρ Π² Π³ΡΠ°Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅. Π’ΡΡ ΡΠΎΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. Π ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΡΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡ Π°2.
Π-ΡΠ΅ΡΠ²ΡΡΡΡΡ , ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ HEAD ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π°2:
f0af7e62679e144bb28c627ee3e8f7bdb235eee9
ΠΠ°ΠΏΠΈΡΡ Ρ ΡΡΠ° Π² HEAD ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½Π½ΡΠΌ HEAD. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π³ΡΠ°ΡΠ΅ Π½ΠΈΠΆΠ΅, ΡΡΠΎ HEAD ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ Π°2, Π° Π½Π΅ Π½Π° master.
~/alpha $ printf '3' > data/number.txt
~/alpha $ git add data/number.txt
~/alpha $ git commit -m 'a3'
[detached HEAD 3645a0e] a3
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/number.txt Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 3 ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Git ΠΈΠ΄ΡΡ ΠΊ HEAD Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π°3. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Π½Π° Π²Π΅ΡΠ²Ρ, ΠΎΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π°2.
Git ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ HEAD, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π» Π½Π° Ρ ΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π°3. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½Π½ΡΠΌ HEAD. ΠΠ½ Π½Π΅ Π½Π° Π²Π΅ΡΠ²ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½ΠΈ Π½Π° Π°3, Π½ΠΈ Π½Π° Π»ΡΠ±ΠΎΠΉ ΠΈΠ· Π΅Π³ΠΎ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ². ΠΠ³ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΡΠ΅ΡΡΡΡ.
ΠΠ°Π»Π΅Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΎΠΏΡΡΠΊΠ°ΡΡ Π΄Π΅ΡΠ΅Π²ΡΡ ΠΈ Π±Π»ΠΎΠ±Ρ ΠΈΠ· Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ Π³ΡΠ°ΡΠΎΠ².
Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ (branch)
~/alpha $ git branch deputy
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ deputy. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Π² .git/refs/heads/deputy, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Ρ ΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ HEAD: Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π°3.
ΠΠ΅ΡΠ²ΠΈ β ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ»ΠΊΠΈ, Π° ΡΡΡΠ»ΠΊΠΈ β ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»Ρ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π²Π΅ΡΠ²ΠΈ Git Π²Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠ²ΠΈ deputy ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π°3 Π½Π° ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠΈ. HEAD Π²ΡΡ Π΅ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΡ Π΅ΡΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ.
ΠΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅
~/alpha $ git checkout master
Switched to branch 'master'
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ master.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Git ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ Π°2, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ master, ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π³ΡΠ°Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ.
ΠΠΎ-Π²ΡΠΎΡΡΡ , Git Π²Π½ΠΎΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π² Π³ΡΠ°Ρ Π² ΡΠ°ΠΉΠ»Ρ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. ΠΡΠΎ ΠΌΠ΅Π½ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅Π½Ρ data/number.txt Π½Π° 2.
Π-ΡΡΠ΅ΡΡΠΈΡ , Git Π²Π½ΠΎΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π² Π³ΡΠ°Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π΄Π»Ρ data/number.txt Π½Π° Ρ ΡΡ Π±Π»ΠΎΠ±Π° 2.
Π-ΡΠ΅ΡΠ²ΡΡΡΡΡ , Git Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ HEAD Π½Π° master, ΠΌΠ΅Π½ΡΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Ρ Ρ ΡΡΠ° Π½Π°
ref: refs/heads/master
ΠΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ Π²Π΅ΡΠ²Ρ, Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Ρ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉ
~/alpha $ printf '789' > data/number.txt
~/alpha $ git checkout deputy
Your changes to these files would be overwritten
by checkout:
data/number.txt
Commit your changes or stash them before you
switch branches.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ data/number.txt Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 789. ΠΠ½ ΠΏΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ deputy. Git ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ.
HEAD ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° master, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ Π½Π° a2, Π³Π΄Π΅ Π² data/number.txt Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ 2. deputy ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° a3, Π³Π΄Π΅ Π² data/number.txt Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ 3. Π Π²Π΅ΡΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Π΄Π»Ρ data/number.txt Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ 789. ΠΡΠ΅ ΡΡΠΈ Π²Π΅ΡΡΠΈΠΈ ΡΠ°Π·Π»ΠΈΡΠ½Ρ, ΠΈ ΡΠ°Π·Π½ΠΈΡΡ Π½ΡΠΆΠ½ΠΎ ΠΊΠ°ΠΊ-ΡΠΎ ΡΡΡΡΠ°Π½ΠΈΡΡ.
Git ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π²Π΅ΡΡΠΈΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΈΠ· ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠΎ ΠΎΠ½ Π²ΡΠ΅ΠΌΠΈ ΡΠΈΠ»Π°ΠΌΠΈ ΠΈΠ·Π±Π΅Π³Π°Π΅Ρ ΠΏΠΎΡΠ΅ΡΠΈ Π΄Π°Π½Π½ΡΡ .
Git ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π²Π΅ΡΡΠΈΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΠΌΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ. ΠΠΎ ΡΡΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ.
ΠΠΎΡΡΠΎΠΌΡ Git ΠΎΡΠΊΠ»ΠΎΠ½ΡΠ΅Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅.
~/alpha $ printf '2' > data/number.txt
~/alpha $ git checkout deputy
Switched to branch 'deputy'
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΌΠ΅ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π» data/number.txt ΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ Π΅ΠΌΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ 2. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ deputy.
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ ΠΏΡΠ΅Π΄ΠΊΠΎΠΌ
~/alpha $ git merge master
Already up-to-date.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ master Π² deputy. ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ Π²Π΅ΡΠ²Π΅ΠΉ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ β ΡΠΎΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ deputy: ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΠΉ. ΠΡΠΎΡΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ β ΡΠΎΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ master: Π΄Π°ΡΡΠΈΠΉ. ΠΠ»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Git Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ. ΠΠ½ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ ΡΠΆΠ΅ Β«Already up-to-dateΒ».
Π‘Π΅ΡΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π² Π³ΡΠ°ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ΅ΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΏΡΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΊΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π³ΠΎ, Git Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ. ΠΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΆΠ΅ Π²Π½Π΅ΡΠ΅Π½Ρ.
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠΌ
~/alpha $ git checkout master
Switched to branch 'master'
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ master.
~/alpha $ git merge deputy
Fast-forward
ΠΠ½ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ deputy Π² master. Git ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΊΠΎΠΌΠΌΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π³ΠΎ, Π°2, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΊΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΄Π°ΡΡΠ΅Π³ΠΎ, Π°3. ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ Π±ΡΡΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠΎΡΠΊΠΎΠΉ Π²ΠΏΠ΅ΡΡΠ΄.
ΠΠ½ Π±Π΅ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΈ Π³ΡΠ°Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ. ΠΠ½ Π²Π½ΠΎΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π² Π³ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ Β«ΠΏΠ΅ΡΠ΅ΠΌΠ°ΡΡΠ²Π°Π΅ΡΒ» master, ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠΊΠ°Π·ΡΠ²Π°Π» Π½Π° Π°3.
Π‘Π΅ΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π½Π° Π³ΡΠ°ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ΅ΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΏΡΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ, Π΅ΡΠ»ΠΈ Π΄Π°ΡΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΠΎΠΌΠΊΠΎΠΌ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π³ΠΎ, ΠΈΡΡΠΎΡΠΈΡ Π½Π΅ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. Π£ΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ: ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΠΌ ΠΈ Π΄Π°ΡΡΠΈΠΌ. ΠΠΎ, Ρ ΠΎΡΡ ΠΈΡΡΠΎΡΠΈΡ Git Π½Π΅ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, Π³ΡΠ°Ρ Git ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½Π°Ρ ΡΡΡΠ»ΠΊΠ°, Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ HEAD, ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ Π΄Π°ΡΡΠ΅Π³ΠΎ.
ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π΄Π²Π° ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΡΠΎΠ΄ΠΎΡΠ»ΠΎΠ²Π½ΡΡ
~/alpha $ printf '4' > data/number.txt
~/alpha $ git add data/number.txt
~/alpha $ git commit -m 'a4'
[master 7b7bd9a] a4
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ 4 Π² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ number.txt ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² master.
~/alpha $ git checkout deputy
Switched to branch 'deputy'
~/alpha $ printf 'b' > data/letter.txt
~/alpha $ git add data/letter.txt
~/alpha $ git commit -m 'b3'
[deputy 982dffb] b3
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ deputy. ΠΠ½ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Β«bΒ» Π² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/letter.txt ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² deputy.
Π£ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΠ±ΡΠΈΠ΅ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π² ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠΎΠ΄ΠΎΡΠ»ΠΎΠ²Π½ΡΠ΅.
Π£ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΠ΄ΠΎΡΠ»ΠΎΠ²Π½ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ Ρ Π΄Π²ΡΠΌΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΠΌΠΈ: ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ.
~/alpha $ git merge master -m 'b4'
Merge made by the 'recursive' strategy.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ master Ρ deputy.
Git ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΠΉ, b3, ΠΈ Π΄Π°ΡΡΠΈΠΉ, a4, Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ ΡΠΎΠ΄ΠΎΡΠ»ΠΎΠ²Π½ΡΡ . ΠΠ½ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ. Π£ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π²ΠΎΡΠ΅ΠΌΡ ΡΠ°Π³ΠΎΠ².
1. Git Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Ρ ΡΡ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΡΠ°ΠΉΠ» alpha/.git/MERGE_HEAD. ΠΠ°Π»ΠΈΡΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ Git, ΡΡΠΎ ΠΎΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ.
2. ΠΠΎ-Π²ΡΠΎΡΡΡ , Git Π½Π°Ρ ΠΎΠ΄ΠΈΡ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ: ΡΠ°ΠΌΡΠΉ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠ΅Π΄ΠΎΠΊ, ΠΎΠ±ΡΠΈΠΉ Π΄Π»Ρ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
Π£ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π΅ΡΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΎΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°Π·Π΄Π΅Π»ΠΈΠ»ΠΈΡΡ Π΄Π²Π΅ ΡΠΎΠ΄ΠΎΡΠ»ΠΎΠ²Π½ΡΡ . Git ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅ΠΏΠΎΡΠΊΡ Π½Π°Π·Π°Π΄ ΠΎΡ b3, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π²ΡΠ΅Ρ Π΅Π³ΠΎ ΠΏΡΠ΅Π΄ΠΊΠΎΠ², ΠΈ Π½Π°Π·Π°Π΄ ΠΎΡ a4 Ρ ΡΠΎΠΉ ΠΆΠ΅ ΡΠ΅Π»ΡΡ. ΠΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΡΠ°ΠΌΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ· ΠΈΡ ΠΎΠ±ΡΠΈΡ ΠΏΡΠ΅Π΄ΠΊΠΎΠ², Π°3. ΠΡΠΎ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
3. Git ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ, Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈΠ· ΠΈΡ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡΡ Π³ΡΠ°ΡΠΎΠ².
4. Git ΡΠΎΠ·Π΄Π°ΡΡ diff, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΠΈΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΠΉ ΠΈ Π΄Π°ΡΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅Π»ΠΈ Ρ Π±Π°Π·ΠΎΠ²ΡΠΌ. ΠΡΠΎΡ diff β ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΡΠ΅ΠΉ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΡ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅, ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ.
Git ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΠΈ Π΄Π°ΡΡΠ΅Π³ΠΎ. ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ½ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ Π·Π°ΠΏΠΈΡΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΠΈ ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½ΡΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ ΡΠ°ΠΉΠ». ΠΠ½ ΠΏΠΈΡΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ Π·Π°ΠΏΠΈΡΡ Π² diff. Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π² diff ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π΄Π²Π΅ Π·Π°ΠΏΠΈΡΠΈ.
ΠΠ΅ΡΠ²Π°Ρ Π·Π°ΠΏΠΈΡΡ Π΄Π»Ρ data/letter.txt. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° β Β«aΒ» Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ, Β«bΒ» Π² ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅ΠΌ ΠΈ Β«aΒ» Π² Π΄Π°ΡΡΠ΅ΠΌ. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ°Π·Π»ΠΈΡΠ°Π΅ΡΡΡ. ΠΠΎ Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΈ Π΄Π°ΡΡΠ΅Π³ΠΎ β ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ. Git Π²ΠΈΠ΄ΠΈΡ, ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡΠΈΠΌ, Π° Π½Π΅ Π΄Π°ΡΡΠΈΠΌ. ΠΠ°ΠΏΠΈΡΡ Π² diff Π΄Π»Ρ data/letter.txt β ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, Π° Π½Π΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ.
ΠΡΠΎΡΠ°Ρ Π·Π°ΠΏΠΈΡΡ Π² diff β Π΄Π»Ρ data/number.txt. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ, Π° Ρ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΎΠ½ΠΎ Π΄ΡΡΠ³ΠΎΠ΅. ΠΠ°ΠΏΠΈΡΡ Π² diff Π΄Π»Ρ data/number.txt β ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.
ΠΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΠΉΡΠΈ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΡΠ°ΠΉΠ» ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅ΠΌ ΠΈΠ»ΠΈ Π΄Π°ΡΡΠ΅ΠΌ, Git ΠΌΠΎΠΆΠ΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°. ΠΡΠΎ ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΎΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
5. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π·Π°ΠΏΠΈΡΡΠΌΠΈ Π² diff, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ data/letter.txt ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ b, Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ data/number.txt β 4.
6. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π·Π°ΠΏΠΈΡΡΠΌΠΈ Π² diff, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΠ°ΠΏΠΈΡΡ, ΠΎΡΠ½ΠΎΡΡΡΠ°ΡΡΡ ΠΊ data/letter.txt, ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π±Π»ΠΎΠ± b, Π° Π·Π°ΠΏΠΈΡΡ Π΄Π»Ρ data/number.txt β Π½Π° Π±Π»ΠΎΠ± 4.
7. ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ:
tree 20294508aea3fb6f05fcc49adaecc2e6d60f7e7d
parent 982dffb20f8d6a25a8554cc8d765fb9f3ff1333b
parent 7b7bd9a5253f47360d5787095afc5ba56591bfe7
author Mary Rose Cook <[email protected]> 1425596551 -0500
committer Mary Rose Cook <[email protected]> 1425596551 -0500
b4
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΄Π²Π° ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ.
8. Git Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠ²Ρ, deputy, Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΡΠΎΠ΄ΠΎΡΠ»ΠΎΠ²Π½ΡΡ , ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΉΠ»
~/alpha $ git checkout master
Switched to branch 'master'
~/alpha $ git merge deputy
Fast-forward
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ master. ΠΠ½ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ deputy ΠΈ master. ΠΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠΎΡΠΊΠ΅ master Π΄ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° b4. Π’Π΅ΠΏΠ΅ΡΡ master ΠΈ deputy ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ.
~/alpha $ git checkout deputy
Switched to branch 'deputy'
~/alpha $ printf '5' > data/number.txt
~/alpha $ git add data/number.txt
~/alpha $ git commit -m 'b5'
[deputy bd797c2] b5
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ deputy. ΠΠ½ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/number.txt Π² 5 ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² deputy.
~/alpha $ git checkout master
Switched to branch 'master'
~/alpha $ printf '6' > data/number.txt
~/alpha $ git add data/number.txt
~/alpha $ git commit -m 'b6'
[master 4c3ce18] b6
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ master. ΠΠ½ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/number.txt Π² 6 ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² master.
~/alpha $ git merge deputy
CONFLICT in data/number.txt
Automatic merge failed; fix conflicts and
commit the result.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ deputy ΠΈ master. ΠΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ. ΠΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠΌ Π΄Π΅Π»Π°Π΅Ρ ΡΠ΅ ΠΆΠ΅ ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π³ΠΎΠ², ΡΡΠΎ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π±Π΅Π· ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°: ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ .git/MERGE_HEAD, Π½Π°ΠΉΡΠΈ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π³ΠΎ ΠΈ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΠΎΠ·Π΄Π°ΡΡ diff, ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ·-Π·Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΡΠ΅Π΄ΡΠΌΠΎΠΉ ΡΠ°Π³ Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ ΠΈ Π²ΠΎΡΡΠΌΠΎΠΉ Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΡΠ»ΠΊΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ. ΠΡΠΎΠΉΠ΄ΡΠΌ ΠΏΠΎ Π½ΠΈΠΌ Π·Π°Π½ΠΎΠ²ΠΎ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ.
1. Git Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Ρ ΡΡ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΡΠ°ΠΉΠ» .git/MERGE_HEAD.
2. Git Π½Π°Ρ ΠΎΠ΄ΠΈΡ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, b4.
3. Git Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π³ΠΎ ΠΈ Π΄Π°ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
4. Git Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ diff, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΡΡΠΈΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄ΡΠ½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡΠΈΠΌ ΠΈ Π΄Π°ΡΡΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ. ΠΡΠΎΡ diff β ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΡΠ΅ΠΉ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΌ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅, ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ.
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ diff ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ Π·Π°ΠΏΠΈΡΡ: data/number.txt. ΠΠ½Π° ΠΎΡΠΌΠ΅ΡΠ΅Π½Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/number.txt ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ Π² Π΄Π°ΡΡΠ΅ΠΌ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅ΠΌ ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ°Ρ .
5. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΠ΅ Π·Π°ΠΏΠΈΡΡΠΌΠΈ Π² diff, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. Π ΠΎΠ±Π»Π°ΡΡΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° Git Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΎΠ±Π΅ Π²Π΅ΡΡΠΈΠΈ Π² ΡΠ°ΠΉΠ» ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° ata/number.txt ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
<<<<<<< HEAD
6
=======
5
>>>>>>> deputy
6. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ Π·Π°ΠΏΠΈΡΡΠΌΠΈ Π² diff, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΠ°ΠΏΠΈΡΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΏΡΡΠΈ ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΈ ΡΡΠ°ΠΏΠ°. Π£ Π·Π°ΠΏΠΈΡΠΈ ΡΠ°ΠΉΠ»Π° Π±Π΅Π· ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΡΡΠ°ΠΏ ΡΠ°Π²Π΅Π½ 0. ΠΠ΅ΡΠ΅Π΄ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΡΠ³Π»ΡΠ΄Π΅Π» ΡΠ°ΠΊ, Π³Π΄Π΅ Π½ΡΠ»ΠΈ β ΡΡΠΎ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΠ°ΠΏΠΎΠ²:
0 data/letter.txt 63d8dbd40c23542e740659a7168a0ce3138ea748
0 data/number.txt 62f9457511f879886bb7728c986fe10b0ece6bcb
ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΠΈΡΠΈ diff Π² ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠΆΠ΅ ΡΠ°ΠΊ:
0 data/letter.txt 63d8dbd40c23542e740659a7168a0ce3138ea748
1 data/number.txt bf0d87ab1b2b0ec1a11a3973d2845b42413d9767
2 data/number.txt 62f9457511f879886bb7728c986fe10b0ece6bcb
3 data/number.txt 7813681f5b41c028345ca62a2be376bae70b7f61
ΠΠ°ΠΏΠΈΡΡ data/letter.txt Π½Π° ΡΡΠ°ΠΏΠ΅ 0 ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅, ΠΊΠ°ΠΊΠ°Ρ ΠΈ Π±ΡΠ»Π° Π΄ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΠ°ΠΏΠΈΡΡ Π΄Π»Ρ data/number.txt Ρ ΡΡΠ°ΠΏΠΎΠΌ 0 ΠΈΡΡΠ΅Π·Π»Π°. ΠΠΌΠ΅ΡΡΠΎ Π½Π΅Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΡΡΠΈ Π½ΠΎΠ²ΡΡ . Π£ Π·Π°ΠΏΠΈΡΠΈ Ρ ΡΡΠ°ΠΏΠΎΠΌ 1 Ρ ΡΡ ΠΎΡ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ data/number.txt. Π£ Π·Π°ΠΏΠΈΡΠΈ Ρ ΡΡΠ°ΠΏΠΎΠΌ 3 Ρ ΡΡ ΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π΄Π°ΡΡΠ΅Π³ΠΎ data/number.txt. ΠΡΠΈΡΡΡΡΡΠ²ΠΈΠ΅ ΡΡΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π³ΠΎΠ²ΠΎΡΠΈΡ Git, ΡΡΠΎ Π΄Π»Ρ data/number.txt Π²ΠΎΠ·Π½ΠΈΠΊ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ.
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ.
~/alpha $ printf '11' > data/number.txt
~/alpha $ git add data/number.txt
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π΄Π²ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡΠΈΡ Π²Π΅ΡΡΠΈΠΉ, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ data/number.txt ΡΠ°Π²Π½ΡΠΌ 11. ΠΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ» Π² ΠΈΠ½Π΄Π΅ΠΊΡ. Git Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π±Π»ΠΎΠ±, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ 11. ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π³ΠΎΠ²ΠΎΡΠΈΡ Git ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΡΠ΅ΡΡΠ½. Git ΡΠ΄Π°Π»ΡΠ΅Ρ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ data/number.txt Π΄Π»Ρ ΡΡΠ°ΠΏΠΎΠ² 1, 2 ΠΈ 3 ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π·Π°ΠΏΠΈΡΡ Π΄Π»Ρ data/number.txt Π½Π° ΡΡΠ°ΠΏΠ΅ 0 Ρ Ρ ΡΡΠ΅ΠΌ ΠΎΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π±Π»ΠΎΠ±Π°. Π’Π΅ΠΏΠ΅ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π°ΠΏΠΈΡΠΈ:
0 data/letter.txt 63d8dbd40c23542e740659a7168a0ce3138ea748
0 data/number.txt 9d607966b721abde8931ddd052181fae905db503
~/alpha $ git commit -m 'b11'
[master 251a513] b11
7. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ. Git Π²ΠΈΠ΄ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ .git/MERGE_HEAD, ΡΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ Π΅ΠΌΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅. ΠΠ½ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ Π½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ². ΠΠ½ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, b11, Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ΅ΡΡΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΠ½ ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ» .git/MERGE_HEAD. ΠΡΠΎ ΠΈ Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅.
8. Git Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠ²Ρ, master, Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°
ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ Π³ΡΠ°ΡΠ° Git Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π΄Π΅ΡΠ΅Π²ΡΡ ΠΈ Π±Π»ΠΎΠ±Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ:
~/alpha $ git rm data/letter.txt
rm 'data/letter.txt'
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Git ΡΠ΄Π°Π»ΠΈΡΡ data/letter.txt. Π€Π°ΠΉΠ» ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ ΠΈΠ· ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. ΠΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ Π·Π°ΠΏΠΈΡΡ.
~/alpha $ git commit -m '11'
[master d14c7d2] 11
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠΌΠΌΠΈΡ. ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ΅, Git ΡΡΡΠΎΠΈΡ Π³ΡΠ°Ρ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. data/letter.txt Π½Π΅ Π²ΠΊΠ»ΡΡΡΠ½ Π² Π³ΡΠ°Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΅Π³ΠΎ Π½Π΅Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅.
ΠΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
~/alpha $ cd ..
~ $ cp -R alpha bravo
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ alpha/ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ bravo/. ΠΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΡΠΊΡΡΡΠ΅:
~
βββ alpha
| βββ data
| βββ number.txt
βββ bravo
βββ data
βββ number.txt
Π’Π΅ΠΏΠ΅ΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ bravo Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ Π³ΡΠ°Ρ Git:
Π‘Π²ΡΠ·Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ
~ $ cd alpha
~/alpha $ git remote add bravo ../bravo
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ alpha. ΠΠ½ Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ bravo ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π΄Π»Ρ alpha. ΠΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊ Π² ΡΠ°ΠΉΠ» alpha/.git/config:
[remote "bravo"]
url = ../bravo/
Π‘ΡΡΠΎΠΊΠΈ Π³ΠΎΠ²ΠΎΡΡΡ, ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ bravo Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ../bravo.
ΠΠΎΠ»ΡΡΠΈΡΡ Π²Π΅ΡΠ²Ρ Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
~/alpha $ cd ../bravo
~/bravo $ printf '12' > data/number.txt
~/bravo $ git add data/number.txt
~/bravo $ git commit -m '12'
[master 94cd04d] 12
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ bravo. ΠΠ½ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ data/number.txt Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 12 ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² master Π½Π° bravo.
~/bravo $ cd ../alpha
~/alpha $ git fetch bravo master
Unpacking objects: 100%
From ../bravo
* branch master -> FETCH_HEAD
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ alpha. ΠΠ½ ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ master ΠΈΠ· bravo Π² alpha. Π£ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ΅ΡΡΡΠ΅ ΡΠ°Π³Π°.
1. Git ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π² bravo ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ master. ΠΡΠΎ Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° 12.
2. Git ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΎΡ ΠΊΠΎΡΠΎΡΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡ 12: ΡΠ°ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΎΠ±ΡΠ΅ΠΊΡΡ Π² Π΅Π³ΠΎ Π³ΡΠ°ΡΠ΅, ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΏΡΠ΅Π΄ΠΊΠ° ΠΊΠΎΠΌΠΌΠΈΡΠ° 12, ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ· ΠΈΡ Π³ΡΠ°ΡΠΎΠ². ΠΠ½ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΆΠ΅ Π΅ΡΡΡ Π² Π±Π°Π·Π΅ alpha. ΠΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠ½ ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π² alpha/.git/objects/.
3. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΡΡΡΠ»ΠΊΠΈ Π² alpha/.git/refs/remotes/bravo/master ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° 12.
4. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ alpha/.git/FETCH_HEAD ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
94cd04d93ae88a1f53a4646532b1e8cdfbc0977f branch 'master' of ../bravo
ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠ°ΠΌΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° fetch Π΄ΠΎΡΡΠ°Π»Π° ΠΊΠΎΠΌΠΌΠΈΡ 12 ΠΈΠ· master Ρ bravo.
ΠΠ±ΡΠ΅ΠΊΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Ρ ΡΠ°Π·Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ±ΡΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ.
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠ΄Π°Π»ΡΠ½Π½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ ΡΠΈΠΏΠ° alpha/.git/refs/remotes/bravo/master. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π²Π΅ΡΠ²ΠΈ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠ½ ΠΊΠΎΡΡΠ΅ΠΊΡΠ΅Π½ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΅Π³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ ΡΡΠ°Π½Π΅Ρ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ Π² ΡΠ»ΡΡΠ°Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ.
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ FETCH_HEAD
~/alpha $ git merge FETCH_HEAD
Updating d14c7d2..94cd04d
Fast-forward
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ FETCH_HEAD. FETCH_HEAD β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π΅ΡΡ ΠΎΠ΄Π½Π° ΡΡΡΠ»ΠΊΠ°. ΠΠ½Π° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ 12, Π΄Π°ΡΡΠΈΠΉ. HEAD ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ 11, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΠΉ. Git Π΄Π΅Π»Π°Π΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅-ΠΏΠ΅ΡΠ΅ΠΌΠΎΡΠΊΡ ΠΈ Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ master Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ 12.
ΠΠΎΠ»ΡΡΠΈΡΡ Π²Π΅ΡΠ²Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
~/alpha $ git pull bravo master
Already up-to-date.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡ master ΠΈΠ· bravo Π² alpha. Pull β ΡΡΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Β«ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ FETCH_HEADΒ». Git Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠ±Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ, ΡΡΠΎ master Β«Already up-to-dateΒ».
ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
~/alpha $ cd ..
~ $ git clone alpha charlie
Cloning into 'charlie'
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅Π΅Π·ΠΆΠ°Π΅Ρ Π² Π²Π΅ΡΡ Π½ΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³. ΠΠ½ ΠΊΠ»ΠΎΠ½ΠΈΡΡΠ΅Ρ alpha Π² charlie. ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ, ΡΡ ΠΎΠ΄Π½ΡΠΌ Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ cp, ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ» Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ bravo. Git ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ charlie. ΠΠ½ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ charlie Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ alpha Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ origin, ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ origin ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ FETCH_HEAD.
Π Π°Π·ΠΌΠ΅ΡΡΠΈΡΡ (push) Π²Π΅ΡΠ²Ρ Π½Π° ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Π½Π° ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
~ $ cd alpha
~/alpha $ printf '13' > data/number.txt
~/alpha $ git add data/number.txt
~/alpha $ git commit -m '13'
[master 3238468] 13
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ alpha. ΠΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ data/number.txt Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 13 ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² master Π½Π° alpha.
~/alpha $ git remote add charlie ../charlie
ΠΠ½ Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ charlie ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ alpha.
~/alpha $ git push charlie master
Writing objects: 100%
remote error: refusing to update checked out
branch: refs/heads/master because it will make
the index and work tree inconsistent
ΠΠ½ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅Ρ master Π½Π° charlie. ΠΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ° 13, ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ Π² charlie.
Π ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ. Git, ΠΊΠ°ΠΊ Π²ΡΠ΅Π³Π΄Π°, ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ. ΠΠ½ ΠΎΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡ Π½Π° Π²Π΅ΡΠ²ΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½Π° ΡΠ΄Π°Π»ΡΠ½Π½ΠΎ. ΠΡΠΎ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ». Π Π°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΎ Π±Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ HEAD. ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π»ΠΎ Π±Ρ ΠΊ ΠΏΡΡΠ°Π½ΠΈΡΠ΅, Π΅ΡΠ»ΠΈ Π±Ρ ΠΊΡΠΎ-ΡΠΎ Π΅ΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π» ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ Π½Π° ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
Π ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΊΠΎΠΌΠΌΠΈΡ 13 Ρ Π½Π΅ΠΉ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΡΡΡ Π²Π΅ΡΠ²Ρ Π½Π° charlie. ΠΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡ, ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ. ΠΠΌ Π½ΡΠΆΠ΅Π½ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡ, ΠΈ Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ (pull), Π½ΠΎ Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΏΡΡΠΌΡΡ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ. ΠΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π΅ΡΡΠΎ ΡΠΈΠΏΠ° ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ GitHub. ΠΠΌ Π½ΡΠΆΠ΅Π½ ΡΠΈΡΡΡΠΉ (bare) ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ΠΠ»ΠΎΠ½ΠΈΡΡΠ΅ΠΌ ΡΠΈΡΡΡΠΉ (bare) ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
~/alpha $ cd ..
~ $ git clone alpha delta --bare
Cloning into bare repository 'delta'
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ Π² Π²Π΅ΡΡ Π½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ. ΠΠ½ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»ΠΎΠ½ delta Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΈΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΎ ΠΎΠ±ΡΡΠ½ΡΠΉ ΠΊΠ»ΠΎΠ½ Ρ Π΄Π²ΡΠΌΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΠΌΠΈ. Π€Π°ΠΉΠ» config Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠΈΡΡΡΠΉ. Π ΡΠ°ΠΉΠ»Ρ, ΠΎΠ±ΡΡΠ½ΠΎ Ρ ΡΠ°Π½ΡΡΠΈΠ΅ΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ .git, Ρ ΡΠ°Π½ΡΡΡΡ Π² ΠΊΠΎΡΠ½Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ:
delta
βββ HEAD
βββ config
βββ objects
βββ refs
Π Π°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π²Π΅ΡΠ²Ρ Π² ΡΠΈΡΡΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
~ $ cd alpha
~/alpha $ git remote add delta ../delta
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ alpha. ΠΠ½ Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ delta ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π΄Π»Ρ alpha.
~/alpha $ printf '14' > data/number.txt
~/alpha $ git add data/number.txt
~/alpha $ git commit -m '14'
[master cb51da8] 14
ΠΠ½ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 14 ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² master Π½Π° alpha.
~/alpha $ git push delta master
Writing objects: 100%
To ../delta
3238468..cb51da8 master -> master
ΠΠ½ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅Ρ master Π² delta. Π Π°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ Π² ΡΡΠΈ ΡΡΠ°ΠΏΠ°.
1. ΠΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ° 14 Π½Π° Π²Π΅ΡΠ²ΠΈ master, ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ ΠΈΠ· alpha/.git/objects/ Π² delta/objects/.
2. delta/refs/heads/master ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ Π΄ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° 14.
3. alpha/.git/refs/remotes/delta/master Π½Π°ΠΏΡΠ°Π²Π»ΡΡΡ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ 14. Π alpha Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π°ΠΊΡΡΠ°Π»ΡΠ½Π°Ρ Π·Π°ΠΏΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ delta.
ΠΡΠΎΠ³
Git ΠΏΠΎΡΡΡΠΎΠ΅Π½ Π½Π° Π³ΡΠ°ΡΠ΅. ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Git ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΡΡΡ ΡΡΠΈΠΌ Π³ΡΠ°ΡΠΎΠΌ. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ Git, ΡΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Π½Π° ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ Π³ΡΠ°ΡΠ°, Π° Π½Π΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°Ρ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ .
Π§ΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ ΠΎ Git Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅, ΠΈΠ·ΡΡΠ°ΠΉΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ .git. ΠΡΠΎ Π½Π΅ ΡΡΡΠ°ΡΠ½ΠΎ. ΠΠ°Π³Π»ΡΠ½ΠΈΡΠ΅ Π²ΠΎΠ²Π½ΡΡΡΡ. ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄ΡΡ. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ Π²ΡΡΡΠ½ΡΡ. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΠΈΠ»ΡΠ½ΠΎ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ»ΠΎΠΌΠ°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ°ΡΠ΅ΠΌ ΠΏΠΎΡΠΈΠ½ΠΈΡΠ΅ Π΅Π³ΠΎ.
Git Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ / Π₯Π°Π±Ρ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π° Pro Git, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Ρ Π²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π³ΠΈΡΠ°. ΠΠΎ ΠΏΠΎΡΠ»Π΅ Π΅Π΅ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΡΠ°ΡΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Π² Git, ΠΊΠΎΠ³Π΄Π° ΠΈΡ Π·Π°Π²ΠΎΠ΄ΠΈΡΡ ΠΈ ΠΊΠ°ΠΊ ΠΌΠ΅ΡΠΆΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ. ΠΠΎΡΠΎΠΉ ΠΌΠ½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈΡΡ ΠΎΡΠ΅Π½Ρ Β«ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΠ΅Β» ΠΈ Π½Π΅ΠΎΠΏΡΠ°Π²Π΄Π°Π½Π½ΠΎ ΡΡΠ»ΠΎΠΆΠ½Π΅Π½Π½ΡΠ΅ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π³ΠΈΡΠΎΠΌ. Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΡΠΆΠ΅ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π»Π°ΡΡ ΡΡ Π΅ΠΌΠ° ΡΠ°Π±ΠΎΡΡ Ρ Π³ΠΈΡΠΎΠΌ ΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Π² Π½Π΅ΠΌ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ Ρ ΠΎΡΡ Π΄Π°ΡΡ ΠΊΡΠ°ΡΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Git, ΠΈ ΠΎΠΏΠΈΡΠ°ΡΡ Β«ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΡΡΒ» ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ. ΠΠ½ΠΎΠ³ΠΎΠ΅ ΠΈΠ· ΡΠΎΠ³ΠΎ ΡΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ ΠΈ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ.ΠΡΠ° ΡΡΠ°ΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΎΡΠ²Π°ΠΈΠ²Π°ΡΡ Git, ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΡΡ-ΡΠΎ Π΄ΡΡΠ³ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ. ΠΠ»Ρ ΠΎΠΏΡΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΡΡΠ° ΡΡΠ°ΡΡΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΠΈ Π±Π°Π½Π°Π»ΡΠ½ΠΎΠΉ.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Ρ ΡΠ΅ΠΌ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π²Π΅ΡΠΊΠ° ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ.
ΠΠΎΠΌΠΌΠΈΡ
ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΊΠΎΠΌΠΌΠΈΡ ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π² Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ. Π Π½Π΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π½ΠΎΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΠΊΠΎΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π Git ΠΊΠΎΠΌΠΌΠΈΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠ»Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΡΠΎ ΠΎΠ΄Π½ΠΎΡΠ²ΡΠ·Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ, ΡΠΎΡΡΠΎΡΡΠΈΠΉ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΈ ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
Π£ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΅ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π°ΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π°Π²ΡΠΎΡ, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ Ρ.ΠΏ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π½ΠΎΡΠΈΡ ΡΡΠΎΡ ΠΊΠΎΠΌΠΌΠΈΡ Π² ΠΊΠΎΠ΄, ΠΈΠ»ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ ΡΠ΅ΡΠ°Π΅Ρ.
Git ΡΡΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ΡΡΡ ΡΠ²ΠΎΡ ΠΊΠΎΠΏΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ β.gitβ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° Π² ΠΊΠΎΡΠ½Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠΌΠ΅Π½Π½ΠΎ Π² ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Ρ ΡΠ°Π½ΡΡΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Git. ΠΠΎΠ³Π΄Π° Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ Git, ΠΎΠ½ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΎΠΉ.
ΠΠ°Π²Π΅ΡΡΠΈ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
git init
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Ρ Π²Π°Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠΆΠ΅ ΠΈΠΌΠ΅ΡΡΠ΅Π³ΠΎΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΡΠ²ΠΎΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠ°ΠΏΠΊΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΡΠ°ΠΊ:
git clone <url ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ>
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ .git Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΠΊΠΎΠΏΠΈΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ Π² ΠΊΠΎΡΠΎΡΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ ΠΊΠΎΠ΄.
- Π Π°Π±ΠΎΡΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ β ΡΡΠΎ ΡΠ°ΠΉΠ»Ρ Π² ΠΊΠΎΡΠ½Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠΎΡ ΠΊΠΎΠ΄ Ρ ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅.
- ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ β ΠΎΠ½Π° ΠΆΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ β.gitβ. Π Π½Π΅ΠΉ Ρ ΡΠ°Π½ΡΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
- Π£Π΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ β ΡΠΎΡ ΡΠ°ΠΌΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΠ±ΡΠΈΠΌ, Π² ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠ²ΠΎΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΡΠΎ Π±Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΌΠΎΠ³Π»ΠΈ ΠΈΡ ΡΠ²ΠΈΠ΄Π΅ΡΡ. Π£Π΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ, Π½ΠΎ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΠ½ Π±ΡΠ²Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½.
- ΠΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄Π½Π° ΠΎΠ±Π»Π°ΡΡΡ, Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ±ΡΡΠ½ΠΎ Π±ΡΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΡΠΎ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (staging area). ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΠΌΠΌΠΈΡ, Π½ΡΠΆΠ½ΠΎ Π²Π½Π°ΡΠ°Π»Π΅ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² ΡΡΠΎΡ ΠΊΠΎΠΌΠΌΠΈΡ. Π ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ², Π½ΠΎ Π² ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π½Π΅ Π²ΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π ΡΠ΅Π»ΠΎΠΌ ΡΠ°Π±ΠΎΡΠ° Ρ Π³ΠΈΡΠΎΠΌ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ: Π²Ρ ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, Π·Π°ΡΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² staging area ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git add <ΠΈΠΌΡ/ΡΠ°ΠΉΠ»Π°>
ΠΡΠΈ ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΠΊΠΈ ΡΠΎ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΎΠΉ.
ΠΠΎΡΠΎΠΌ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ Π² ΡΠ²ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
git commit βm βΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡβ
ΠΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π½Π°ΠΊΠΎΠΏΠΈΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ, Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git push
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π²Π°ΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΡ ΠΎΠ΄ΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ΠΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΠΎ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git pull
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, Π² Π²Π°ΡΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΏΠΎΡΠ²ΡΡΡΡ ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ.
ΠΠΎΠ΄ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ Π² ΠΊΠΎΠΌΠΌΠΈΡΠ°Ρ . Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΅ΡΡΡ ΡΠ²ΠΎΠ΅ ΠΈΠΌΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Ρ Π΅Ρ ΡΡΠ½ΠΊΡΠΈΠΈ sha-1 ΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git log
Π€ΠΎΡΠΌΠ°Ρ ΠΎΡΠ²Π΅ΡΠ° ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎ Π΄Π΅ΡΠΎΠ»ΡΡ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π΅Π½. ΠΠΎΡ ΡΠ°ΠΊΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠ²Π΅Π΄Π΅Ρ ΠΎΡΠ²Π΅Ρ Π² Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π΅ΠΌΠΎΠΌ Π²ΠΈΠ΄Π΅
git log --pretty=format:"%H [%cd]: %an - %s" --graph --date=format:%c
Π§ΡΠΎ Π±Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡ ΠΏΡΠΎΡΠΌΠΎΡΡ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ»Π°Π²ΠΈΡΡ q
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΡΡΠΎ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΈ staging area ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
git status
Π Π°Π±ΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ Π½Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git checkout <hash ΠΊΠΎΠΌΠΌΠΈΡΠ°>
Π’ΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ git status ΠΈ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Ρ Π²Π°Ρ Π½Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈ Π½Π΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ½Π°ΡΠ΅ Git Π½Π΅ ΠΏΠΎΠΉΠΌΠ΅Ρ, ΠΊΠ°ΠΊ Π΅ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ. git status ΠΏΠΎΠ΄ΡΠΊΠ°ΠΆΠ΅Ρ Π²Π°ΠΌ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΡΡΠΎ Π±Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ. ΠΡΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΈ ΠΏΡΠΈ Π²ΡΡΠΊΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ.
ΠΠ΅ΡΠΊΠ°
ΠΠ΅ΡΠΊΠ° Π² Git ΡΡΠΎ ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠ±ΡΡΠ½ΠΎ Π²Π΅ΡΠΊΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠ΅ΡΠΊΠ° Π±Π΅ΡΠ΅Ρ ΡΠ²ΠΎΠ΅ Π½Π°ΡΠ°Π»ΠΎ ΠΎΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π²ΠΎΡ ΡΠ°ΠΊ.
Π‘Π΄Π΅Π»Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git pull
git checkout βb <ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ>
ΠΡΠΎΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π²Π΅ΡΠΊΡ, Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡ Π½Π° Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
git branch <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>
ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π²Π΅ΡΠΊΡ
git checkout <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>
ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ Π²Π΅ΡΠΊΠ° Π±Π΅ΡΠ΅Ρ ΡΠ²ΠΎΠ΅ Π½Π°ΡΠ°Π»ΠΎ Π½Π΅ ΠΎΡ Π²Π΅ΡΠΊΠΈ, Π° ΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΠ»ΠΈΡΡ.
ΠΠ΅ΡΠΊΠ° ΠΎΠ±ΡΡΠ½ΠΎ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ merge ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ Π²Π΅ΡΠΊΡ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Ρ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ. Π merge ΠΊΠΎΠΌΠΌΠΈΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π΄Π²Π΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π΄Π²Π° ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ Π² ΠΎΠ΄Π½Ρ Π²Π΅ΡΠΊΡ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄ΡΡΠ³Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ ΠΏΡΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ Π²Π΅ΡΠΎΠΊ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ merge ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ Π±Π΅Π· merge commit. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²Π΅ΡΠΎΠΊ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π² merge commit Ρ Π΄Π²ΡΠΌΡ ΠΏΡΠ΅Π΄ΠΊΠ°ΠΌΠΈ ΠΎΡΠΏΠ°Π΄Π°Π΅Ρ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΏΡΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠΈ Π²Π΅ΡΠΎΠΊ, Git ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π΅Π»Π°Π΅Ρ ΠΏΠΎΠΌΠ΅ΡΠΊΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΄Π°Π»ΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΈΠ΄ΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΠΎΠΉ Π²Π΅ΡΠΊΠΈ Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ° Π²Π΅ΡΠΊΠ° Π±ΡΠ»Π° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π°. Π’Π°ΠΊΠ°Ρ ΡΡ Π΅ΠΌΠ° merge Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅-ΠΏΠ΅ΡΠ΅ΠΌΠΎΡΠΊΠ° (fast-forward merge), Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π²ΠΎΡ ΡΠ°ΠΊ.
ΠΠΎ Π²ΡΠ΅Ρ
ΡΡΠΈΡ
ΡΠ»ΡΡΠ°ΡΡ
, ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Π΅ΡΠΊΠ° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΡΡ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π² Π½Π΅ΠΉ, ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² Π²Π΅ΡΠΊΡ Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ½Π° Π±ΡΠ»Π° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π°. Π’Π°ΠΊ ΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ merge ΡΡΠΎ Π½Π΅ Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ. ΠΡΠ»ΠΈ ΡΠΌΠ΅ΡΠΆΠΈΡΡ Π²Π΅ΡΠΊΡ Π·Π°Π΄Π°ΡΠΈ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΡ, ΡΠΎ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠ΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ
ΠΎΠ΄ΠΈΠ»ΡΡ Π² Π²Π΅ΡΠΊΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π° Π² Π²Π΅ΡΠΊΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π΅ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ· ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠΈ. ΠΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎ Π±Ρ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ, Π½ΡΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΠΆΠΈΡΡ ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΡ Π² Π²Π΅ΡΠΊΡ Π·Π°Π΄Π°ΡΠΈ.
Π§ΡΠΎ Π±Ρ ΡΠΌΠ΅ΡΠΆΠΈΡΡ ΠΎΠ΄Π½Ρ Π²Π΅ΡΠΊΡ Π² Π΄ΡΡΠ³ΡΡ Π½ΡΠΆΠ½ΠΎ Π²Π½Π°ΡΠ°Π»Π΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° ΡΡ Π²Π΅ΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΌΠ΅ΡΠΆΠΈΡΡ
git checkout <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>
ΠΠΎΡΠΎΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π² ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ²
git pull
ΠΠ°ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git merge <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>
Π’Π°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°Π±ΠΎΡΠ° Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Π² ΠΎΠ±ΡΠΈΡ ΡΠ΅ΡΡΠ°Ρ .
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π·Π°Π²ΠΎΠ΄ΠΈΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ git pull. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ.
- ΠΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΌΠΎΠ³ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΊΠΎΠ΄, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π²Π½Π΅ΡΡΠΈ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ Π·Π°Π²ΠΎΠ΄ΠΈΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ. ΠΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡΡ ΠΏΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΡΠ²ΠΎΠ΅ΠΉ Π·Π°Π΄Π°ΡΠΈ.
- ΠΠ·-Π·Π° ΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΠΏΡΠΈ ΠΌΠ΅ΡΠΆΠ΅.
- ΠΠΎΠ»ΡΡΠ΅ ΡΠ°Π½Ρ ΡΡΠΎ Ρ Π²Π°Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ merge commit. ΠΡΠΎ Π½Π΅ ΡΠ°ΠΊ ΠΏΠ»ΠΎΡ ΠΎ, ΠΊΠ°ΠΊ Π΄Π²Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΠΏΡΠ½ΠΊΡΠ°. ΠΠΎ Π΅ΡΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π»ΠΈΡΠ½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΡΠΎ ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΡΠ΄Π΅Π»Π°ΡΡ?
ΠΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Π² Git
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Π² Π³ΠΈΡΠ΅.
ΠΠ΅ΡΠΊΠΈ Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΌΠΎΠ³Π»ΠΈ Π²Π΅ΡΡΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΠΈ Π½Π΅ ΠΌΠ΅ΡΠ°ΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Ρ ΠΏΡΠΈ ΡΡΠΎΠΌ. ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Git ΡΠΎΠ·Π΄Π°Π΅Ρ Π±Π°Π·ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ. ΠΠ½Π° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ master Π²Π΅ΡΠΊΠΎΠΉ. ΠΠ½Π° ΡΡΠΈΡΠ°Π΅ΡΡΡ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, Ρ.Π΅. Π² Π½Π΅ΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡ Π΅ΠΌΠ° ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ
ΠΠ±ΡΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π²Π·ΡΡΡΡΡ Π·Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π·Π°Π΄Π°ΡΠΈ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π·Π°Π²ΠΎΠ΄ΠΈΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠΈ ΠΈ ΡΠ΅ΡΠ°Π΅Ρ Π·Π°Π΄Π°ΡΡ Π² ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠ΅. Π Ρ ΠΎΠ΄Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠ΄ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² Π²Π΅ΡΠΊΠ΅ Π·Π°Π΄Π°ΡΠΈ. Π ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π°Π΄Π°ΡΠ° ΡΠ΅ΡΠ΅Π½Π°, Π΄Π΅Π»Π°ΡΡ merge ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΡ. Π’Π°ΠΊΡΡ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Ρ ΡΠ½ΠΈΡ ΡΠ΅ΡΡΠ°ΠΌΠΈ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Π΄Π΅ΠΏΠ»ΠΎΠ΅ΠΌ. ΠΡΠ»ΠΈ ΡΠ½ΠΈΡ ΡΠ΅ΡΡΡ Π±ΡΠ΄ΡΡ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡ Π²Π΅ΡΡ ΠΊΠΎΠ΄, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΄Π΅ΠΏΠ»ΠΎΠΉ ΡΠ°ΠΊ, ΡΡΠΎ Π²Π½Π°ΡΠ°Π»Π΅ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΠ³ΠΎΠ½ΡΡΡΡΡ Π²ΡΠ΅ ΡΠ΅ΡΡΡ Π² Π²Π΅ΡΠΊΠ΅ Π·Π°Π΄Π°ΡΠΈ. Π ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΏΡΠΎΡΠ»ΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎ, Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ merge ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ. ΠΡΠΈ ΡΠ°ΠΊΠΎΠΉ ΡΡ Π΅ΠΌΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΈ.
ΠΠΌΠ΅Π½Π½Π°Ρ Π²Π΅ΡΠΊΠ°
ΠΠ΅ΠΎΠΏΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π·Π°Π²ΠΎΠ΄ΡΡ ΡΠ΅Π±Π΅ ΠΈΠΌΠ΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΡΠ΅Π³Π΄Π° Π² Π½Π΅ΠΉ. ΠΠ½ΠΈ ΡΠ΅ΡΠ°ΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π·Π° ΡΠ°Π·, ΠΈ ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π·Π°Π΄Π°Ρ, Π΄Π΅Π»Π°ΡΡ Π½ΠΎΠ²ΡΠΉ Pull Π·Π°ΠΏΡΠΎΡ ΡΠ΅ΡΠ΅Π· Web ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ (ΠΎΠ± ΡΡΠΎΠΌ ΡΡΡΡ Π½ΠΈΠΆΠ΅). ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ Π·Π°Π΄Π°ΡΡ ΠΈ Π½Π΅Π»ΡΠ·Ρ Π±ΡΡΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄ΡΡΠ³ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ. ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Π΅ΡΠΊΠΈ ΡΠ°ΠΊ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ Π±ΡΠ΄ΡΡ Π²ΡΠ΅ ΡΠΈΠ»ΡΠ½Π΅Π΅ ΡΠ°ΡΡ ΠΎΠ΄ΠΈΡΡΡΡ ΠΈ ΠΊΠΎΠ΄ Π² Π²Π΅ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° ΡΠ°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΡΡΡΠ°ΡΠ΅Π΅Ρ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠΈ ΠΈ Π΅Π³ΠΎ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΠ±ΠΎ ΡΠΌΠ΅ΡΠΆΠΈΡΡ ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΡ Π² Π²Π΅ΡΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°, Π»ΠΈΠ±ΠΎ Π·Π°Π²Π΅ΡΡΠΈ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° ΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠ΅. ΠΡΠ°Π²Π΄Π° ΠΊ ΡΠΎΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ²ΠΎΠΈΡΡ Π³ΠΈΡ Π² Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΠ΅ ΡΡΠΎ Π±Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° βΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΡΡβ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΡΠ° ΡΡ Π΅ΠΌΠ° ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ΅ΡΡΠΎ Π±ΡΡΡ Π΄Π»Ρ Π½Π΅ΠΎΠΏΡΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Git.
Π‘Ρ Π΅ΠΌΠ° Ρ dev Π²Π΅ΡΠΊΠΎΠΉ
ΠΡΡΠ³Π°Ρ ΡΡ Π΅ΠΌΠ° ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Π² Π½Π΅ΠΉ ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠΈ Π΅ΡΡΡ Π΅ΡΠ΅ Π΄Π΅Π²Π΅Π»ΠΎΠΏΠ΅ΡΡΠΊΠ°Ρ Π²Π΅ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡΡ Π½Π° ΡΠ΅ΡΡΠΎΠ²ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ. Π’Π°ΠΊΡΡ Π²Π΅ΡΠΊΡ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ dev. Π‘Ρ Π΅ΠΌΠ° ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΊΠ°Ρ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π·Π°Π²ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½Π΅Π΅ Π²Π΅ΡΠΊΡ ΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠ΅. ΠΠΎΠ³Π΄Π° ΠΎΠ½ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ Π·Π°Π΄Π°ΡΠ΅ΠΉ, ΡΠΎ ΠΌΠ΅ΡΠΆΠΈΡ Π²Π΅ΡΠΊΡ Π·Π°Π΄Π°ΡΠΈ Π² dev Π²Π΅ΡΠΊΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΠΌΠΈ ΡΡΠΈΠ»ΠΈΡΠΌΠΈ Π·Π°Π΄Π°ΡΠ° ΡΠ΅ΡΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΠ΅ΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ. ΠΡΠ»ΠΈ Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ, ΡΠΎ Π·Π°Π΄Π°ΡΡ Π΄ΠΎΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π² ΡΠΎΠΉ ΠΆΠ΅ Π²Π΅ΡΠΊΠ΅ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΌΠ΅ΡΠΆΠ°Ρ Ρ dev Π²Π΅ΡΠΊΠΎΠΉ. ΠΠΎΠ³Π΄Π° ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ, ΡΠΎ ΠΠΠ’ΠΠ£ ΠΠΠΠΠ§Π ΠΌΠ΅ΡΠΆΠ°Ρ Ρ ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠΎΠΉ. ΠΠ°ΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π² ΡΡΠΎΠΉ ΡΡ Π΅ΠΌΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠΎΠΉ Π½ΡΠΆΠ½ΠΎ ΠΌΠ΅ΡΠΆΠΈΡΡ Π²Π΅ΡΠΊΡ Π·Π°Π΄Π°ΡΠΈ, Π° Π½Π΅ dev Π²Π΅ΡΠΊΡ. ΠΠ΅Π΄Ρ Π² dev Π²Π΅ΡΠΊΠ΅ Π±ΡΠ΄ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅, Π½ΠΎ ΠΈ Π² Π΄ΡΡΠ³ΠΈΡ ΠΈ Π½Π΅ Π²ΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ. ΠΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠ° ΠΈ dev Π²Π΅ΡΠΊΠ° ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ Π±ΡΠ΄ΡΡ ΡΠ°ΡΡ ΠΎΠ΄ΠΈΡΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈ ΡΠ°ΠΊΠΎΠΉ ΡΡ Π΅ΠΌΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ Π·Π°Π²ΠΎΠ΄ΡΡ Π½ΠΎΠ²ΡΡ dev Π²Π΅ΡΠΊΡ ΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠΈ. ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ, ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡ Π΅ΠΌΠΎΠΉ. Π’Π°ΠΊΡΡ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΅ΡΠ»ΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π½Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ΅ΡΡΠΎΠ² ΠΈ Π²ΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΡΡΡΠ½ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
Π’Π°ΠΊ ΠΆΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΡΡΠΎ ΡΡΠΈ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ, Π΅ΡΠ»ΠΈ Π² ΡΡΠΎΠΌ Π΅ΡΡΡ ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ.
Pull Π·Π°ΠΏΡΠΎΡΡ
Π‘ ΡΡΠΈΠΌ ΠΏΠΎΠ½ΡΡΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΏΡΡΠ°Π½ΠΈΡΠ°. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Π² Git Π΅ΡΡΡ Π΄Π²Π΅ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°ΡΡ Pull Π·Π°ΠΏΡΠΎΡΠΎΠΌ. ΠΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ , ΡΡΠΎ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° git pull. ΠΡΡΠ³Π°Ρ ΡΡΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° Π² web ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠ° github.com ΠΎΠ½Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π²ΠΎΡ ΡΠ°ΠΊ
ΠΡΠΎ ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΈ ΠΏΠΎΠΉΠ΄Π΅Ρ ΡΠ΅ΡΡ Π΄Π°Π»ΡΡΠ΅.
ΠΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΡΠ½ΡΠΉ ΠΈ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠΉ, ΡΠΎ ΠΎΠ½ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°ΠΌ ΡΠ»ΠΈΠ²Π°Π΅Ρ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΡ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π΄Π΅Π»Π°Π΅Ρ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Pull Π·Π°ΠΏΡΠΎΡ. Pull Π·Π°ΠΏΡΠΎΡ ΡΡΠΎ ΠΏΠΎ ΡΡΡΠΈ Π΄Π΅Π»Π° Π·Π°ΠΏΡΠΎΡ Π½Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ merge. Pull Π·Π°ΠΏΡΠΎΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· web ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Git, ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git request-pull. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Pull Π·Π°ΠΏΡΠΎΡ ΡΠΎΠ·Π΄Π°Π½, ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΡΠΎ, ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΎΡ ΠΊΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π²Π½Π΅ΡΡΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡ, ΠΈ Π»ΠΈΠ±ΠΎ ΠΎΠ΄ΠΎΠ±ΡΠΈΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π»ΠΈΠ±ΠΎ Π½Π΅Ρ. Merge ΡΠ΅ΡΠ΅Π· pull Π·Π°ΠΏΡΠΎΡΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ ΠΏΠ»ΡΡΡ ΠΈ ΠΌΠΈΠ½ΡΡΡ. ΠΠΈΠ½ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΄Π»Ρ ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠΏΡΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π±ΡΠ΄Π΅Ρ Π»ΠΈΡΠ½ΠΈΠΌ. ΠΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΡΠΌΠΎΠ·ΠΈΡΡ ΡΠ°Π±ΠΎΡΡ ΠΈ Π²Π½ΠΎΡΠΈΡΡ Π² Π½Π΅Π΅ ΠΎΡΡΠ΅Π½ΠΊΠΈ Π±ΡΡΠΎΠΊΡΠ°ΡΠΈΠΈ.
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π΅ΡΠ»ΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π΅ΡΡΡ Π½Π΅ ΠΎΠΏΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠ»ΠΎΠΌΠ°ΡΡ ΠΊΠΎΠ΄, ΡΠΎ Pull Π·Π°ΠΏΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠΎΡΡ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΈ Π±ΡΡΡΡΠ΅Π΅ ΠΎΠ±ΡΡΠΈΡΡ ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² Π½Π°Π±Π»ΡΠ΄Π°Ρ Π·Π° ΡΠ΅ΠΌ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π²Π½Π΅ΡΡΠΈ Π² ΠΊΠΎΠ΄.
Π’Π°ΠΊ ΠΆΠ΅ Pull Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ², ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅Π»ΡΠ·Ρ Π·Π°ΡΠ°Π½Π΅Π΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ-ΡΠΎ ΠΎ ΠΊΠΎΠΌΠΏΠ΅ΡΠ΅Π½ΡΠΈΠΈ ΡΠ°ΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ Ρ ΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π² ΠΊΠΎΠ΄Π΅.
ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΡ
ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΏΡΠΈ ΠΌΠ΅ΡΠ΄ΠΆΠ΅ Π²Π΅ΡΠΎΠΊ Π΅ΡΠ»ΠΈ Π² ΡΡΠΈΡ Π²Π΅ΡΠΊΠ°Ρ ΠΎΠ΄Π½Π° ΠΈ ΡΠ° ΠΆΠ΅ ΡΡΡΠΎΠΊΠ° ΠΊΠΎΠ΄Π° Π±ΡΠ»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ. Π’ΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΡΠΎ Git Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΌ ΡΠ΅ΡΠΈΡΡ ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈ ΠΎΠ½ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π²ΡΡΡΠ½ΡΡ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ. ΠΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. ΠΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π½ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π·Π°Π΄Π°ΡΠΈ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ.
ΠΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡΡΡ ΠΎ ΠΊΠ°ΠΊΠΎΠΌ-ΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΡΠΈΠ»Π΅ ΠΊΠΎΠ΄Π°. Π’ΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π½Π΅ Π±ΡΠ΄ΡΡ ΠΌΠ΅Π½ΡΡΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ ΠΎΠ΄Π½Ρ ΠΈ ΡΡ ΠΆΠ΅ ΡΡΡΠΎΡΠΊΡ ΡΡΠ°Π½Π΅Ρ Π½ΠΈΠΆΠ΅.
ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ Ρ ΠΎΡΠΎΡΠΈΠΉ ΡΠΎΠ²Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅, ΡΡΠΎ Π²Π½ΠΎΡΠΈΡΡ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄ ΠΏΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ. Π§Π΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ ΡΡΡΠΎΡΠ΅ΠΊ Π²Ρ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΈ, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΡΡΠΎ Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΡ ΠΆΠ΅ ΡΠ°ΠΌΡΡ ΡΡΡΠΎΠΊΡ ΡΡΠΎ ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π² Π΄ΡΡΠ³ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΠ΅ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΈΡΠ°ΡΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΌ ΠΎΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΡΠ΅Π³ΠΎΠΌ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΡΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ. ΠΡΠΎ ΠΈ Π΅ΡΡΡ ΡΠΎ ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ Π²ΠΎΡ ΡΠ°ΠΊ
git tag -a v1.0
Π§ΡΠΎ Π±Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π²Π΅ΡΠΊΠΈ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git push βtags
Π’Π΅Π³ΠΈ ΡΠ΄ΠΎΠ±Π½Ρ Π΅ΡΠ΅ ΠΈ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° ΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΡΠΌΠ΅ΡΠ΅Π½ΠΎ ΡΠ΅Π³ΠΎΠΌ. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ΅ ΡΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git checkout <ΠΈΠΌΡ ΡΠ΅Π³Π°>
Π Π°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π΅ΠΏΠ»ΠΎΡ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ΅Π³ΠΈ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½ΡΠΆΠ½ΠΎ Π·Π°Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ ΠΈΠ»ΠΈ ΡΠΎΠ±ΡΠ°ΡΡ. Π’Π°ΠΊ ΡΠ΄Π΅Π»Π°Π½ΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΈΠ»ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ ΠΊΠΎΠ΄ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ, ΡΠΎ Π΅ΡΡΡ ΡΠΈΡΠΊ, ΡΡΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π² ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π²Π½Π΅ΡΠ΅Ρ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΌΠ°ΡΡΠ΅Ρ Π²Π΅ΡΠΊΡ, ΠΈ ΠΌΡ ΡΠΎΠ±Π΅ΡΠ΅ΠΌ Π½Π΅ ΡΠΎ ΡΡΠΎ Ρ ΠΎΡΠ΅Π»ΠΈ. Π ΡΠΎΠΌΡ ΠΆΠ΅ ΡΠ°ΠΊ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠΌΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
ΠΡΠ»ΠΈ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΡΠΈΡ ΠΏΡΠ°Π²ΠΈΠ» ΠΈ βΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉβ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ, ΡΠΎ Π²Π°ΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π°Ρ Git Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ packagist.org. ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ Π²ΡΡΠΊΠΈΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠ°ΡΡΡΠΈΡΠ°Π½Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° ΡΠ°ΠΊΡΡ ΡΡ Π΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π³ΠΈΡΠΎΠΌ, ΠΈ Π΅ΡΠ»ΠΈ Π²Ρ ΡΡΠ°Π·Ρ Π½Π°ΡΠ½Π΅ΡΠ΅ Π΄Π΅Π»Π°ΡΡ Π²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, ΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΏΠ»ΡΡΠΎΠΌ Π΄Π»Ρ Π²Π°Ρ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ.
ΠΡΠΎ ΠΎΠ±Π·ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Git. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΏΡΠΎ Git Π±ΠΎΠ»ΡΡΠ΅, ΡΠΎ Ρ Π²Π°ΠΌ ΠΏΠΎΡΠΎΠ²Π΅ΡΡΡ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΊΠ½ΠΈΠ³Ρ Pro Git. ΠΠΎΡ Π·Π΄Π΅ΡΡ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π±ΡΠ»Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΡΠΏΡΠΎΡΠ΅Π½Π½Π°Ρ ΡΡ Π΅ΠΌΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π΅Π΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ Ρ ΡΠ΅ΡΠΈΠ» ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ ΡΠ°Π½ΡΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅. ΠΡΠ»ΠΈ Π²Π°Ρ ΡΠΎΠΆΠ΅ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ, ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΎΠ± ΡΡΠΎΠΌ Π²ΠΎΡ Π·Π΄Π΅ΡΡ.
- Why GitHub?
Features β
- Code review
- Project management
- Integrations
- Actions
- Packages
- Security
- Team management
- Hosting
- Customer stories β
- Security β
- Team
- Enterprise
- Explore
- Explore GitHub β
Learn & contribute
- Topics
- Collections
- Trending
- Learning Lab
- Open source guides
Connect with others
- Events
Π — Git
- ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
- ΠΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ ΠΈ Π±ΡΡΡΡΡΠΉ
- ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
- ΠΠ»Π°ΡΠ΄Π°ΡΠΌ
- ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΈ ΠΎΡΠΊΡΡΡΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄
- Π’ΠΎΡΠ³ΠΎΠ²Π°Ρ ΠΌΠ°ΡΠΊΠ°
ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ Git, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΡΠ΅Ρ Π΅Π³ΠΎ ΠΏΠΎΡΡΠΈ ΠΈΠ· Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ SCM, — ΡΡΠΎ ΠΌΠΎΠ΄Π΅Π»Ρ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ.
Git ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈ ΠΏΠΎΠΎΡΡΡΠ΅Ρ Π²Π°Ρ ΠΈΠΌΠ΅ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ Π»ΠΈΠ½ΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠ΅ΠΊΡΠ½Π΄Ρ.
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ Π²Π΅ΡΠΈ, ΠΊΠ°ΠΊ:
- ΠΠ΅ΡΠΊΠΎΠ½ΡΠ°ΠΊΡΠ½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° . Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π²Π΅ΡΠΊΡ, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΈΠ΄Π΅Ρ, ΡΠΎΠ²Π΅ΡΡΠΈΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·, ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΡΠ΄Π°, ΠΎΡΠΊΡΠ΄Π° Π²Ρ ΠΏΠΎΡΠ»ΠΈ, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΠ°ΡΡ, ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΡΠ΄Π°, Π³Π΄Π΅ Π²Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΡΠ΅, ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ Π΅Π³ΠΎ.
- ΡΠΎΠ»Π΅Π²ΡΡ ΠΊΠΎΠ΄Π΅ΠΈΠ½ΠΎΠ² . ΠΠΌΠ΅ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠ΅Π³Π΄Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎ, ΡΡΠΎ ΠΈΠ΄Π΅Ρ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ, Π΄ΡΡΠ³ΡΡ, Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΠ΅ ΡΠ°Π±ΠΎΡΡ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ.
- Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ . Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠ΅ Π²Π΅ΡΠ²ΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½Π°Π΄ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠ»Π°Π²Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ΄Π°Π»ΡΠ΅ΡΠ΅ ΠΊΠ°ΠΆΠ΄ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠΎΠ³Π΄Π° ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΡΡ Ρ Π²Π°ΡΠ΅ΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ.
- ΠΠ΄Π½ΠΎΡΠ°Π·ΠΎΠ²ΡΠ΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΡ .Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π²Π΅ΡΠΊΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ², ΠΎΡΠΎΠ·Π½Π°ΠΉΡΠ΅, ΡΡΠΎ ΠΎΠ½Π° Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π°Π»ΠΈΡΠ΅ Π΅Π΅ — ΠΎΡΡΠ°Π²ΠΈΠ² ΡΠ°Π±ΠΎΡΡ — ΠΈ Π½ΠΈΠΊΡΠΎ Π΅Π΅ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΠ²ΠΈΠ΄ΠΈΡ (Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Π² ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π½Π°ΠΆΠ°Π»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π΅ΡΠ²ΠΈ).
Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΄Π²ΠΈΠ³Π°ΡΡ Π²ΡΠ΅ ΡΠ²ΠΎΠΈ Π²Π΅ΡΠ²ΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ²ΠΎΠΈΡ Π²Π΅ΡΠΎΠΊ, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΈΠ»ΠΈ Π²ΡΠ΅ΠΌΠΈ. ΠΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π»ΡΠ΄ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ΄Π΅ΠΈ, Π½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΡΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°ΡΡ, ΠΊΠ°ΠΊ ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΠΈΠΌΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ.
ΠΡΡΡ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ, Π½ΠΎ ΡΡΠ° ΡΠ°Π±ΠΎΡΠ° Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ ΠΈ ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ. Git Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΏΡΠΎΡΡΡΠΌ ΠΈ ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΏΠΎΡΠΎΠ± ΡΠ°Π±ΠΎΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π΅Π³ΠΎ ΠΈΠ·ΡΡΠ°ΡΡ.
ΠΠ°Π»ΡΠΉ ΠΈ Π±ΡΡΡΡΡΠΉ
Git Π±ΡΡΡΡΠΎ . Π‘ Git ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΡΡΠΎ Π΄Π°Π΅Ρ Π΅ΠΌΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ Π² ΡΠΊΠΎΡΠΎΡΡΠΈ Π² ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Π³Π΄Π΅-Π»ΠΈΠ±ΠΎ.
Git Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΄ΡΠΎΠΌ Linux, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π΄Π½Ρ. Git Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C, ΡΠΎΠΊΡΠ°ΡΠ°Ρ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ΅ Ρ ΡΠ·ΡΠΊΠ°ΠΌΠΈ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ. Π‘ΠΊΠΎΡΠΎΡΡΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±ΡΠ»ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅Π»ΡΡ Git Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ Π½Π°ΡΠ°Π»Π°.
Π’Π΅ΡΡΡ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ ΠΏΡΠΎΡΠΈΠ² Subversion, ΠΎΠ±ΡΠ°Ρ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΡ ΠΎΠΆΠ° Π² CVS ΠΈΠ»ΠΈ Perforce. ΠΠ΅Π½ΡΡΠ΅, Π±ΡΡΡΡΠ΅Π΅.
ΠΠ»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±ΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ AWS Π² ΠΎΠ΄Π½ΠΎΠΉ Π·ΠΎΠ½Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ. Git ΠΈ SVN Π±ΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π½Π° ΠΎΠ±Π΅ΠΈΡ ΠΌΠ°ΡΠΈΠ½Π°Ρ , Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Ruby Π±ΡΠ»ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΎ Π² ΠΎΠ±Π° ΡΠ΅ΡΠ²Π΅ΡΠ° Git ΠΈ SVN, ΠΈ ΠΎΠ±ΡΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π±ΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π½Π° ΠΎΠ±ΠΎΠΈΡ .
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ ΡΠΎΡΠ½ΠΎ. ΠΠ΄Π΅ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π½ΠΈΠ·ΠΊΠΎΠΌ ΠΎΠ±ΡΠΈΠΉ Π·Π½Π°ΠΌΠ΅Π½Π°ΡΠ΅Π»Ρ ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΡΡ ‘commit’ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π²ΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΡΠΎΠ»ΠΊΠ½ΡΡΡ Git, Ρ ΠΎΡΡ Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²Ρ Π½Π΅ Π±ΡΠ΄Π΅ΡΠ΅ ΡΠΎΠ»ΠΊΠ°ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π³Π΄Π΅ Π΄Π²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ Π² Π‘ΠΠ.
ΠΡΠ΅ ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ .
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ | Git | SVN | ||
---|---|---|---|---|
Π€ΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ (A) | ΠΠΎΠ±Π°Π²ΠΈΡΡ, Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ 113 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² (2164+, 2259-) | 0,64 | 2,60 | 4x |
Π€ΠΈΠΊΡΠ°ΡΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ (B) | ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΡΡΡΡΡΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 1 ΠΠ | 1.53 | 24,70 | 16x |
Π Π°Π·Π»ΠΈΡΠ½ΡΠΉ ΡΠΎΠΊ | Π Π°Π·Π»ΠΈΡΠΈΡ 187 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² (1664+, 4859-) ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ | 0,25 | 1,09 | 4x |
Diff Recent | Diff ΠΏΡΠΎΡΠΈΠ² 4 ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π½Π°Π·Π°Π΄ (269 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ / 3609 +, 6898-) | 0,25 | 3,99 | 16x |
Π Π°Π·Π»ΠΈΡΠ°ΡΡ ΠΌΠ΅ΡΠΊΠΈ | Π Π°Π·Π»ΠΈΡΠ°ΡΡ Π΄Π²Π΅ ΠΌΠ΅ΡΠΊΠΈ Π΄ΡΡΠ³ ΠΏΡΠΎΡΠΈΠ² Π΄ΡΡΠ³Π° (v1.9.1.0 / v1.9.3.0) | 1.17 | 83,57 | 71x |
ΠΡΡΠ½Π°Π» (50) | ΠΡΡΠ½Π°Π» ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ 50 ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² (19 ΠΠ Π²ΡΡ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ ) | 0,01 | 0,38 | 31x |
ΠΡΡΠ½Π°Π» (Π²ΡΠ΅) | ΠΡΡΠ½Π°Π» Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² (26 056 ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² — 9,4 ΠΠ Π½Π° Π²ΡΡ ΠΎΠ΄Π΅) | 0,52 | 169,20 | 325x |
ΠΡΡΠ½Π°Π» (ΡΠ°ΠΉΠ») | ΠΡΡΠ½Π°Π» ΠΈΡΡΠΎΡΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° (array.c — 483 ΠΎΠ±ΠΎΡΠΎΡΠ°) | 0,60 | 82.84 | 138x |
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ | Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ Pull of Commit A (113 ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ, 2164+, 2259-) | 0,90 | 2,82 | 3x |
ΠΠΈΠ½Π° | Π‘ΡΡΠΎΠΊΠ° Π°Π½Π½ΠΎΡΠ°ΡΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° (array.c) | 1,91 | 3,04 | 1x |
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΎ Π»ΡΡΡΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π΄Π»Ρ SVN — ΡΠ΅ΡΠ²Π΅ΡΠ° Π±Π΅Π· Π½Π°Π³ΡΡΠ·ΠΊΠΈ Ρ Π³ΠΈΠ³Π°Π±ΠΈΡΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅.ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΠΈΠ· Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½Π° Π±ΡΠ»ΠΈ Π±Ρ Π΅ΡΠ΅ Ρ ΡΠΆΠ΅ Π΄Π»Ρ SVN, Π΅ΡΠ»ΠΈ Π±Ρ ΡΡΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π° Git Π½Π΅ ΠΏΠΎΡΡΡΠ°Π΄Π°ΡΡ.
ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΈΠ· ΡΡΠΈΡ ΠΎΠ±ΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Git ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½-Π΄Π²Π° ΠΏΠΎΡΡΠ΄ΠΊΠ° Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ SVN , Π΄Π°ΠΆΠ΅ Π² ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ Π΄Π»Ρ SVN.
ΠΠ΄Π½ΠΎ ΠΈΠ· ΠΌΠ΅ΡΡ, Π³Π΄Π΅ Git ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, — ΡΡΠΎ Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΄Π΅ΡΡ Git Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ Π²ΡΡ ΠΈΡΡΠΎΡΠΈΡ, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΡ.ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ Π³ΡΠ°ΡΠΈΠΊΠΎΠ², Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΡΠΎ Π½Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·.
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ | ΠΠΈΡ * | Git | SVN | |
---|---|---|---|---|
ΠΠ»ΠΎΠ½ | ΠΠ»ΠΎΠ½ ΠΈ ΠΌΠ΅Π»ΠΊΠΈΠΉ ΠΊΠ»ΠΎΠ½ (*) Π² Git ΠΏΡΠΎΡΠΈΠ² ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π² SVN | 21,0 | 107,5 | 14,0 |
Π Π°Π·ΠΌΠ΅Ρ (ΠΠ) | Π Π°Π·ΠΌΠ΅Ρ ΠΎΠ±ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ / ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ (Π² ΠΠ) | 181.0 | 132,0 |
Π’Π°ΠΊΠΆΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆ, Ρ ΠΎΡΡ Git ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ Π²Π΅ΡΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π΄Π»Ρ ΠΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠΈ ΡΠΆΠ°ΡΠΈΠΈ ΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ
ΠΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΡΠΈΡΡΠ½ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ SCM, Π²ΠΊΠ»ΡΡΠ°Ρ Git, Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ.ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ Β«ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈΒ» ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ Β«ΠΊΠ»ΠΎΠ½Β» Π²ΡΠ΅Π³ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°.
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΠΉ
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠΎ ΡΡΡΠΈ, ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΠ»Π½ΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΡΡΠΈΡ ΠΊΠΎΠΏΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΆΠ°ΡΠ° Π΄Π»Ρ Π·Π°ΠΌΠ΅Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ±ΠΎΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ. ΠΠΎ ΡΡΡΠΈ, Π² Git Π½Π΅Ρ Π΅Π΄ΠΈΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΡΠ±ΠΎΡ, Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°.
ΠΡΠ±ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ
ΠΠ·-Π·Π° ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΈΡΠΎΠ΄Ρ Git ΠΈ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ°Π±ΠΎΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Ρ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π»Π΅Π³ΠΊΠΎΡΡΡΡ.
Subversion-ΡΡΠΈΠ»Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°
Π¦Π΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Ρ Π»ΡΠ΄Π΅ΠΉ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΡΡΠΈΡ ΠΈΠ· ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. Git Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ Π²ΡΠ΄Π²ΠΈΠ³Π°ΡΡ, Π΅ΡΠ»ΠΈ ΠΊΡΠΎ-ΡΠΎ Π²ΡΠ΄Π°Π²Π°Π» Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅ΡΠ²Π΅Ρ, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎ.
Integration Manager Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ
ΠΡΡΠ³ΠΎΠΉ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Git Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° ΠΏΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ — ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ Β«Π±Π»Π°Π³ΠΎΡΠ»ΠΎΠ²Π΅Π½Π½ΡΠΉΒ» ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ°ΡΠ΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΊΠ»ΠΎΠ½ΠΈΡΡΡΡ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π² ΡΠ²ΠΎΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΈ ΠΏΡΠΎΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΎΡΠ° Π²Π½Π΅ΡΡΠΈ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡΠΎΡ ΡΠΈΠΏ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°ΡΡΠΎ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈΠ»ΠΈ GitHub.
Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π΄ΠΈΠΊΡΠ°ΡΠΎΡΠ° ΠΈ Π»Π΅ΠΉΡΠ΅Π½Π°Π½ΡΠΎΠ²
ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΡΠ°ΡΡΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΡΠ΄ΡΠΎ ββLinux.Π ΡΡΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΡΠ΄ΠΈ (Β«Π»Π΅ΠΉΡΠ΅Π½Π°Π½ΡΡΒ») ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π·Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΡΡΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ. ΠΡΡΠ³ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΎΡ (Β«Π΄ΠΈΠΊΡΠ°ΡΠΎΡΒ») ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΠ²ΠΎΠΈΡ Π»Π΅ΠΉΡΠ΅Π½Π°Π½ΡΠΎΠ², Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ΄Π²ΠΈΠ³Π°ΡΡ Π² Β«Π±Π»Π°Π³ΠΎΡΠ»ΠΎΠ²Π΅Π½Π½ΠΎΠ΅Β» Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΎΡΠΎΠΌ ΠΊΠ»ΠΎΠ½ΠΈΡΡΠ΅Ρ.
Data Assurance
ΠΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Git, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±ΠΈΡΠ° Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠ» ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ° ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ. ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ ΠΈΠ· Git ΠΊΡΠΎΠΌΠ΅ ΡΠΎΡΠ½ΡΡ Π±ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΏΠΎΠ»ΠΎΠΆΠΈΠ»ΠΈ Π² .
Π’Π°ΠΊΠΆΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠ°ΠΉΠ», Π΄Π°ΡΡ, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ΅ ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² Git-Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΡΡΡ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠΎ Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π±ΡΠ» Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½, Π½ΠΎ ΡΡΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π² Π΅Π³ΠΎ ΠΈΡΡΠΎΡΠΈΠΈ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ.
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ.
Π‘ΡΠ°Π΄ΠΈΠΎΠ½
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ, Π² Git Π΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΡΡΒ» ΠΈΠ»ΠΈ Β«ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌΒ». ΠΡΠΎ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ, Π³Π΄Π΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅Π΄ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠ΄Π½Π° Π²Π΅ΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠ»ΠΈΡΠ°Π΅Ρ Git ΠΎΡ Π΄ΡΡΠ³ΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π²Π°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ
.Git — Book
, 2-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ (2014),
Π‘ΠΊΠ°ΡΠ°ΡΡ Ebook
ΠΡΡ ΠΊΠ½ΠΈΠ³Π° Pro Git, Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ Π‘ΠΊΠΎΡΡΠΎΠΌ Π§Π°ΠΊΠΎΠ½ΠΎΠΌ ΠΈ ΠΠ΅Π½ΠΎΠΌ Π¨ΡΡΠ°ΡΠ±ΠΎΠΌ ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Π°Ρ Apress, Π΄ΠΎΡΡΡΠΏΠ½Π° Π·Π΄Π΅ΡΡ. ΠΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΎ ΠΏΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Creative Commons Attribution Non Commercial Share Alike 3.0. ΠΠ΅ΡΠ°ΡΠ½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π½Π° Amazon.com.>
- 1.1 Π ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ Π²Π΅ΡΡΠΈΠΉ
- 1.2 ΠΡΠ°ΡΠΊΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ Git
- 1,3 Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git?
- 1.4 ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ°
- 1,5 Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Git
- 1,6 ΠΠ΅ΡΠ²Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Git
- 1.7 ΠΠΎΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠΌΠΎΡΡ
- 1.8 Π Π΅Π·ΡΠΌΠ΅
- 2,1 ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Git Repository
- 2,2 ΠΠ°ΠΏΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅
- 2,3 ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
- 2.4 ΠΡΠΌΠ΅Π½Π° Π²Π΅ΡΠ΅ΠΉ
- 2.5 Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌΠΈ
- 2,6 Tagging
- 2,7 Git Aliases
- 2,8 Π Π΅Π·ΡΠΌΠ΅
- 3,1 ΠΠ΅ΡΠ²ΠΈ Π² Π΄Π²ΡΡ ΡΠ»ΠΎΠ²Π°Ρ
- 3.2 ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
- 3,3 Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠ»ΠΈΠ°Π»Π°ΠΌΠΈ
- 3,4 ΠΠ΅ΡΠ²ΡΡΠΈΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ
- 3,5 Π£Π΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΠΈΠ»ΠΈΠ°Π»Ρ
- 3,6 ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²ΠΊΠ°
- 3,7 Π Π΅Π·ΡΠΌΠ΅
- 4.1 ΠΡΠΎΡΠΎΠΊΠΎΠ»Ρ
- 4,2 ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Git Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅
- 4,3 ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° SSH
- 4,4 ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ°
- 4.5 Git Daemon
- 4,6 Π£ΠΌΠ½ΡΠΉ HTTP
- 4.7 GitWeb
- 4,8 GitLab
- 4,9 ΠΠΏΡΠΈΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ²
- 4,10 Π Π΅Π·ΡΠΌΠ΅
- 5,1 Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ
- 5,2 ΠΠΊΠ»Π°Π΄ Π² ΠΏΡΠΎΠ΅ΠΊΡ
- 5.3 ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
- 5,4 Π Π΅Π·ΡΠΌΠ΅
- 6,1 ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ
- 6,2 ΠΠΊΠ»Π°Π΄ Π² ΠΏΡΠΎΠ΅ΠΊΡ
- 6,3 ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
- 6.4 Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ
- 6,5 Π‘ΠΊΡΠΈΠΏΡΠΈΠ½Π³ GitHub
- 6,6 Π Π΅Π·ΡΠΌΠ΅
- 7,1 ΠΡΠ±ΠΎΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΈ
- 7,2 ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π°Ρ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
- 7.3 ΠΠΎΠΏΠΈΡΡ ΠΈ ΡΠΈΡΡΠΈΡΡ
- 7,4 ΠΠΎΠ΄ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ
- 7,5 ΠΠΎΠΈΡΠΊ
- 7,6 ΠΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ
- 7,7 Π‘Π±ΡΠΎΡ ΠΠ΅ΠΌΠΈΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ
- 7,8 Π Π°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
- 7.9 Rerere
- 7,10 ΠΡΠ»Π°Π΄ΠΊΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Git
- 7,11 ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡΠ»ΠΈ
- 7,12 ΠΠ°ΠΊΠ΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
- 7,13 Π·Π°ΠΌΠ΅ΡΠ°ΡΡ
- 7,14 Π₯ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ
- 7.15 Π Π΅Π·ΡΠΌΠ΅
- 8,1 ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Git
- 8,2 ΠΡΡΠΈΠ±ΡΡΡ Git
- 8,3 Git Hooks
- 8,4 ΠΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ Git-Enforced
- 8,5 Π Π΅Π·ΡΠΌΠ΅
- 9.1 Git ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ
- 9,2 ΠΠΈΠ³ΡΠ°ΡΠΈΡ Π² Git
- 9,3 Π Π΅Π·ΡΠΌΠ΅
- 10,1 Π‘Π°Π½ΡΠ΅Ρ Π½ΠΈΠΊΠ° ΠΈ ΡΠ°ΡΡΠΎΡ
- 10,2 Git Objects
- 10,3 Git References
- 10.4 Packfiles
- 10,5 Refspec
- 10,6 ΠΡΠΎΡΠΎΠΊΠΎΠ»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ
- 10,7 ΠΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
- 10.8 ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ
- 10,9 Π Π΅Π·ΡΠΌΠ΅
- A1.1 ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ
- A1.2 Git Π² Visual Studio
- A1.3 Git Π² ΠΊΠΎΠ΄Π΅ Visual Studio
- A1.4 Git Π² Eclipse
- A1.5 Git Π² IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine
- A1.6 Git in Sublime Text
- A1.7 Git in Bash
- A1.8 ΠΠ΅ΡΠ·Π°Π²Π΅Ρ Π² Π·Ρ
- A1.9 Git Π² PowerShell
- A1.10 Π Π΅Π·ΡΠΌΠ΅
Git — Book
, 2-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ (2014),
Π‘ΠΊΠ°ΡΠ°ΡΡ Ebook
ΠΡΡ ΠΊΠ½ΠΈΠ³Π° Pro Git, Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ Π‘ΠΊΠΎΡΡΠΎΠΌ Π§Π°ΠΊΠΎΠ½ΠΎΠΌ ΠΈ ΠΠ΅Π½ΠΎΠΌ Π¨ΡΡΠ°ΡΠ±ΠΎΠΌ ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Π°Ρ Apress, Π΄ΠΎΡΡΡΠΏΠ½Π° Π·Π΄Π΅ΡΡ. ΠΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΎ ΠΏΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Creative Commons Attribution Non Commercial Share Alike 3.0. ΠΠ΅ΡΠ°ΡΠ½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π½Π° Amazon.com.>
- 1.1 Π ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ Π²Π΅ΡΡΠΈΠΉ
- 1.2 ΠΡΠ°ΡΠΊΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ Git
- 1,3 Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git?
- 1.4 ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ°
- 1,5 Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Git
- 1,6 ΠΠ΅ΡΠ²Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Git
- 1.7 ΠΠΎΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠΌΠΎΡΡ
- 1.8 Π Π΅Π·ΡΠΌΠ΅
- 2,1 ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Git Repository
- 2,2 ΠΠ°ΠΏΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅
- 2,3 ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
- 2.4 ΠΡΠΌΠ΅Π½Π° Π²Π΅ΡΠ΅ΠΉ
- 2.5 Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌΠΈ
- 2,6 Tagging
- 2,7 Git Aliases
- 2,8 Π Π΅Π·ΡΠΌΠ΅
- 3,1 ΠΠ΅ΡΠ²ΠΈ Π² Π΄Π²ΡΡ ΡΠ»ΠΎΠ²Π°Ρ
- 3.2 ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
- 3,3 Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠ»ΠΈΠ°Π»Π°ΠΌΠΈ
- 3,4 ΠΠ΅ΡΠ²ΡΡΠΈΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ
- 3,5 Π£Π΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΠΈΠ»ΠΈΠ°Π»Ρ
- 3,6 ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²ΠΊΠ°
- 3,7 Π Π΅Π·ΡΠΌΠ΅
- 4.1 ΠΡΠΎΡΠΎΠΊΠΎΠ»Ρ
- 4,2 ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Git Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅
- 4,3 ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° SSH
- 4,4 ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ°
- 4.5 Git Daemon
- 4,6 Π£ΠΌΠ½ΡΠΉ HTTP
- 4.7 GitWeb
- 4,8 GitLab
- 4,9 ΠΠΏΡΠΈΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ²
- 4,10 Π Π΅Π·ΡΠΌΠ΅
- 5,1 Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ
- 5,2 ΠΠΊΠ»Π°Π΄ Π² ΠΏΡΠΎΠ΅ΠΊΡ
- 5.3 ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
- 5,4 Π Π΅Π·ΡΠΌΠ΅
- 6,1 ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ
- 6,2 ΠΠΊΠ»Π°Π΄ Π² ΠΏΡΠΎΠ΅ΠΊΡ
- 6,3 ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
- 6.4 Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ
- 6,5 Π‘ΠΊΡΠΈΠΏΡΠΈΠ½Π³ GitHub
- 6,6 Π Π΅Π·ΡΠΌΠ΅
- 7,1
ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Π² ΠΌΠΈΡΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ 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 ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ. Π 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 ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π²ΡΠ΅ΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ.
,