Π§Π΅ΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ master ΠΈ origin master
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ origin / master Π² git ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ origin master?
Π― Ρ ΠΎΡΠ΅Π» Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊ ΠΎΡΠ²Π΅ΡΡ @KevinBallard Π·Π΄Π΅ΡΡ Π² ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° «origin master «ΠΏΡΠΎΡΠΈΠ²»origin/master», Π½ΠΎ ΠΌΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π±ΡΠ» Π΄Π»ΠΈΠ½Π½ΡΠΌ.
ΠΈΠ»ΠΈ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠΉ: origin/master ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ» ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ ΠΏΡΠ»ΡΡ (ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½, Ρ. Π΅. ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°Π½Ρ), ΠΈ ΠΌΠΎΠΉ ΠΌΠ΅ΡΡΠ½ΡΠΉ ΡΠΈΠ»ΠΈΠ°Π» ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ master ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Ρ git merge origin/master (ΠΈΠ»ΠΈ git rebase β¦ ). Π’ΠΎ Π΅ΡΡΡ: ΠΊΠΎΠ³Π΄Π° Ρ git pull origin master ΠΎΠ±Π° ΠΌΠΎΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ origin/master ΠΈ master ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅/ΡΠ»ΠΈΠ»ΡΡ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Ρ Π½Π°Ρ ΠΎΠΆΡΡΡ Π² Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ (Ρ. Π΅. git checkout master ΠΌΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π·Π°ΠΊΠ°Π·).
4 ΠΎΡΠ²Π΅ΡΠΎΠ²
ΠΊΠΎΠ³Π΄Π° Π²Ρ git pull (ΡΡΠΎ Ρ ΡΡΠΈΡΠ°Ρ Π·Π»ΠΎΠΌ, ΠΊΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π΅ΡΠ΅?), ΠΎΠ½ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π΄Π΅Π»Π°Π΅Ρ:
ΠΊΠΎΠ³Π΄Π° Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡ master, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ΄Π΅Π»Π°ΡΡ:
ΡΠΊΡΡΡΠ°ΠΊΡ git help pull :
ΡΠΎΡΠ½Π΅Π΅ git pull ΡΠ°Π±ΠΎΡΠ°Π΅Ρ git fetch Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΈ Π·Π²ΠΎΠ½ΠΊΠΈ git merge ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Π½ΡΠ΅ Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π²Π΅ΡΠ²Π΅ΠΉ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π±ΡΠ°Π½Ρ
/
ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Π°Ρ Π²Π΅ΡΠ²Ρ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ git.
git fetch Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ origin/master Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΠ²Ρ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ origin ΠΠΠ£ master ΡΠΈΠ»ΠΈΠ°Π»Π°.
Π΅ΡΠ»ΠΈ Ρ Π½Π°Ρ ΠΎΠΆΡΡΡ Π² Π²Π΅ΡΠΊΠ΅ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ topic, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΠΠ’ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠ΅Ρ Π²ΠΌΠ΅ΡΡΠΎ git ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ/ΠΌΠ°ΡΡΠ΅Ρ?
ΠΈΠ»ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΅ΡΡΡ Π΄Π²Π΅ ΡΠ°Π·Π½ΡΠ΅ ΠΌΠ΅ΡΡΠ½ΡΠ΅ Π³Π»Π°Π²Π½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ?
ΠΠ°, ΡΡΠΎ Π΄Π²Π΅ ΡΠ°Π·Π½ΡΠ΅ ΠΌΠ΅ΡΡΠ½ΡΠ΅ Π²Π΅ΡΠ²ΠΈ. ΠΠ½ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ ΡΠ°Π·Π΄Π΅Π»ΡΡΡ ΠΎΠ±ΡΠ΅Π΅ Π΄Π΅ΡΠ΅Π²ΠΎ.
ΠΏΠΎΡΠ»Π΅ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ git ΡΠΌΠΎΡΡΠΈΡ Π½Π° Π²Π°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΡΠ°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ Π½Π° Π²Π΅ΡΠΊΡ ΠΈΠ· origin Π‘ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ.
Π² config Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊΠ°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΠ²Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ΅Π½Π°, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ-ΡΠ°ΠΊ ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ git pull Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².
ΠΎΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΡΠΎ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠΎΡΠΊΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. Π’Π΅Π³ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ Π΄Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΡΠΎΡΠ΅ΠΊ, Π½ΠΎ Π²Π΅ΡΠ²ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΠ΅Π³ΠΈ ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ git Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π²Π΅ΡΠ²ΠΈ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½Π° Π΄ΡΡΠ³ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ. ΠΡΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ( git commit ), ΡΠΎΠ³Π΄Π° Π²Π΅ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π½ΡΠ½Π΅ΡΠ½ΠΈΠΉ Π³Π»Π°Π²Π° ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π²Π½ΠΎΠ²Ρ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ ΡΠΎΡΠΊΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.
ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΠ²Ρ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ Π²Π΅ΡΠ²Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ, ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π°.
ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΡΠΎΡΠΊΠΈ ΡΡΠΎ Π²Π΅ΡΠΊΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° (Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ git merge ), Π° Π½Π΅ ΡΠ°ΠΌ ΡΠΈΠ»ΠΈΠ°Π».
Π ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ origin / master ΠΈ origin master Π² Git?
7 ΠΎΡΠ²Π΅ΡΠΎΠ²
ΠΡΠΈΠΌΠ΅Ρ: ΡΡΠ½ΡΡΡ Π·Π° Π΄Π²Π° ΡΠ°Π³Π°
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ origin/master ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π΅ΡΠ²ΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π΅Π³ΠΎ. ΠΠΎΡ Π΄Π²Π° ΡΠ°Π³Π°:
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΠΈ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² master ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² origin :
ΠΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ
ΠΡΠ°ΠΊ, Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΡΠΎ:
ΠΡΠΈΠΌΠ΅Ρ (Π² ΠΌΠ΅ΡΡΠ½ΠΎΠΌ ΡΠΈΠ»ΠΈΠ°Π»Π΅ master ):
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ Π±Π°Π½Π³Π°Π»ΠΎΡ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΠ»ΡΡ Π΄Π°Π»ΡΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Β«Π²ΡΠ±ΠΎΡΠΊΡΒ» ΠΈΠ»ΠΈ Β«ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅Β».
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΠ°Π·Π»ΠΈΡΠΈΡ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ origin Π² Git.
Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΈΡΡΠΈΠ½Ρ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π²Π΅ΡΠΊΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ master ΠΈΠ»ΠΈ development, ΠΈΠ»ΠΈ Π²Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΠ΅ ΡΡΠΎ.
Π’Π΅ΠΏΠ΅ΡΡ, Π²Π·ΡΠ² ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΈ.
ΠΡΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ ΠΌΠΎΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠΊΡ (Π½Π° ΠΌΠΎΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅), ΠΈ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ (Ρ.Π΅.
Π’Π΅ΠΏΠ΅ΡΡ Ρ Ρ ΠΎΡΠ΅Π» Π±Ρ, ΡΡΠΎΠ±Ρ ΠΌΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Ρ ΠΌΠΎΠ΅ΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, ΠΊΠ°ΠΊ Ρ ΠΌΠΎΠ³Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ?
git merge origin / master
ΠΠ°ΠΊ ΠΌΠ½Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠΊΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ?
git push origin master
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎΠ± ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅ Π²ΡΠ΅Ρ ΠΌΠΎΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² origin (ΡΠΎ Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ (https: // github. com / mycode / git-awsomecode.git)) Π² Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠΊΡ.
Π― ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΈ ΠΌΠ°ΡΡΠ΅Ρ Ρ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
Π¦ΠΈΠΊΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ΅ΡΠ΅Π· Github
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ°
Π― ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ ΡΠΈΠΊΠ»Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ΅ΡΠ΅Π· Github, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ. ΠΠ½ Π±ΡΠ» ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π³ΠΎΠ΄Π° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°: 3 β 14 ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ 2 ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΠΈ: master ΠΈ dev.
master β ΡΡΠ°Π±ΠΈΠ»ΡΠ½Π°Ρ Π²Π΅ΡΠΊΠ°, Π³ΠΎΡΠΎΠ²Π°Ρ ΠΊ Π²ΡΠΊΠ°ΡΡΠ²Π°Π½ΠΈΡ Π½Π° production ΡΠ΅ΡΠ²Π΅Ρ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ.
dev β Π²Π΅ΡΠΊΠ°, Π½Π°Π΄ ΠΊΠΎΡΠΎΡΠΎΠΉ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°.
ΠΡΠ°ΠΊ, Π² Π½Π°ΡΠ°Π»Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ master ΠΈ dev Π²Π΅ΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Ρ.
1. ΠΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ Π½ΠΎΠ²ΡΠΌ Π΄Π΅ΡΠ΅ΠΊΡΠΎΠΌ / ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΠΎΠΌ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π²Π΅ΡΠΊΡ dev ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΅Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ.
2. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Ρ ΠΎΡΠ΅Ρ Π½Π°ΡΠ°ΡΡ ΠΈΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄Π΅ΡΠ΅ΠΊΡ ΡΡΡΠ°Π½ΠΈΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠΎΠΌΠ΅Ρ ΠΎΡΠΈΠ±ΠΊΠΈ Π½Π° Github β 1234. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· dev
1234-bug-login ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΠ΅ΡΠ²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π½ΠΎΠΌΠ΅Ρ Π΄Π΅ΡΠ΅ΠΊΡΠ°, Π²ΡΠΎΡΡΠΌ β bug / feature, Π° Π΄Π°Π»ΡΡΠ΅ β ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
3. ΠΠ°Π»Π΅Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ: Π΄Π΅Π»Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ Ρ.Π΄. Commit-cΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π½ΠΎΠΌΠ΅Ρ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅
4. ΠΡΠ°ΠΊ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΠΊΠΎΠ½ΡΠ΅Π½Π°, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° Github
ΠΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ²ΠΎΡ Π²Π΅ΡΠΊΡ ΠΈΠ· dev, ΡΡΠΎΠ±Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ»ΠΈΡΡ Π΅Π΅ Π±Π΅Π· ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ².
Π‘ΠΏΠ΅ΡΠ²Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ dev Π²Π΅ΡΠΊΠΈ
Π Π·Π°ΡΠ΅ΠΌ Π²Π»ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΈ Π² dev Π²Π΅ΡΠΊΠ΅, Π² ΡΠ²ΠΎΡ Π²Π΅ΡΠΊΡ (1234-bug-login)
5. ΠΡΠ»ΠΈΡΠ½ΠΎ! ΠΠ΅ΡΠΊΠ° Ρ ΡΠ΅ΡΠ΅Π½Π½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°ΠΌΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄Π΅Π»Π°Π΅Ρ Π‘reate Pull Request ΠΈΠ· 1234-bug-login Π² dev Π²Π΅ΡΠΊΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Github. Π’Π°ΠΊ ΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° Π·Π°Π΄Π°ΡΡ (#1234) Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ Pull Request.
6. Pull Request ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½, Π»ΡΠ±ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ code review, Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΡΡΠΎΡΠ½Π΅Π½ΠΈΡ ΠΈ Ρ.Π΄.
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Ρ Π½Π° Github ΠΎΠ±ΡΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ. Pull Request ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.
7. ΠΠ½ΠΎΠ³Π΄Π°, ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠΆΠ΅ ΡΠ»ΠΈΠ»ΠΈ ΡΠ²ΠΎΠΈ Π²Π΅ΡΠΊΠΈ Ρ dev. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΅ΡΡΡ 2 Π²Π°ΡΠΈΠ°Π½ΡΠ°:
β ΠΊΠ½ΠΎΠΏΠΊΠ° Merge pull request Π½Π° Github Π°ΠΊΡΠΈΠ²Π½Π°. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡ Ρ ΡΠ΅ΠΊΡΡΠΈΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ, ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π΄Π΅Π»Π°ΡΡ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ.
β ΠΊΠ½ΠΎΠΏΠΊΠ° Merge pull request Π½Π΅Π°ΠΊΡΠΈΠ²Π½Π°. ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΠΏΡΠ½ΠΊΡΡ 4) ΠΈ Π·Π°Π½ΠΎΠ²ΠΎ ΡΠ»ΠΈΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· dev Π²Π΅ΡΠΊΠΈ Π² 1234-bug-login.
8. ΠΡΠ»ΠΈΡΠ½ΠΎ! ΠΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΄Π΅Π»Π°Π½Ρ, ΠΈ ΠΊΡΠΎ-ΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π» ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Β«merge itΒ» Π² Pull Request. ΠΠΎΡΠ° Π½Π°ΠΆΠΈΠΌΠ°ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Merge pull request, ΡΡΠΎΠ±Ρ Π²Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ 1234-bug-login Π² dev Π²Π΅ΡΠΊΡ.
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
9. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ 1234-bug-login ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π² dev, Jenkins (ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ) Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ dev ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ· dev Π²Π΅ΡΠΊΠΈ. QA ΠΌΠΎΠ³ΡΡ Π½Π°ΡΠΈΠ½Π°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΊΠ°ΠΊ ΠΈΡΠΎΠ³ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΎΡΠΊΡΡΡΡ Π·Π°Π΄Π°ΡΡ.
10. ΠΡΠ»ΠΈ Pull Request Π²Π½ΠΎΡΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Jenkins Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠ²ΠΎΡ Π²Π΅ΡΠΊΡ Π½Π° qa ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ΅ΡΡΠ΅ΡΠ°ΠΌΠΈ.
Π Π΅Π»ΠΈΠ·
11. ΠΠ΅ΡΠ΅Π΄ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ production ΡΠ΅ΡΠ²Π΅ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π»ΠΈΡΡ dev Π²Π΅ΡΠΊΡ Π² master. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Pull Request ΠΈΠ· dev Π² master ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Github ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Merge pull request, Π²ΠΎΡ ΠΈ Π²ΡΠ΅. ΠΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΠΏΡΠ½ΠΊΡΠΎΠ², Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Π±ΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ.
12. ΠΡΠ»ΠΈ ΡΠ΅Π³ΡΠ΅ΡΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ production ΡΠ΅ΡΠ²Π΅Ρ, ΠΏΡΠΈ ΡΡΠΎΠΌ Π±Π΅ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ (ΡΠΎΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΠ»ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅), ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π½Π° production ΡΠ΅ΡΠ²Π΅Ρ.
13. ΠΠ½ΠΎΠ³Π΄Π° QA Π½Π°Ρ ΠΎΠ΄ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ΅Π³ΡΠ΅ΡΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΡΡ Π΅ΠΌΠ΅, ΠΈΡΠΊΠ»ΡΡΠ°Ρ ΡΠΎ, ΡΡΠΎ Π²Π΅ΡΠΊΠ° ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΈ ΡΠ»ΠΈΠ²Π°Π΅ΡΡΡ Π½Π΅ ΠΈΠ· dev, Π° ΠΈΠ· master. ΠΠΎΡΠ»Π΅ ΡΠ΅Π»ΠΈΠ·Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π»ΠΈΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ· master Π² dev.
Git. ΠΠΎΡΠΎΡΠΊΠΎ ΠΎ Π³Π»Π°Π²Π½ΠΎΠΌ
CΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅:
4. Π‘Π°ΠΌΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Git;
5. Π Π°Π±ΠΎΡΠ° Ρ ΠΈΡΡΠΎΡΠΈΠ΅ΠΉ;
7. ΠΡΠΈΠΌΠ΅ΡΡ Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°;
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΡΠΈΠ²Π΅Ρ, Π₯Π°Π±Ρ! ΠΠ΅Π½Ρ Π·ΠΎΠ²ΡΡ ΠΠ³ΠΎΡ, Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° Flutter. ΠΡΠΎ ΠΌΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π² ΡΡΠ΅ΡΠ΅ IT, ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΎΠ±Π°Π΅Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌ, Ρ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. Π Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Ρ Ρ ΠΎΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠ΅Π½Π½ΡΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΡΠΈΡΡΠ΅ΠΌ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Git. ΠΡΠ°ΠΊ, Π½Π°ΡΠ½Π΅ΠΌ.
βWhoah, Iβve just read this quick tuto about git and oh my god it is cool. I feel now super comfortable using it, and Iβm not afraid at all to break something.β β said no one ever.
ΠΠ΅ ΡΠ°ΠΊ ΡΡΡΠ°ΡΠ΅Π½ ΡΡΡΡ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΌΠ°Π»ΡΡΡ. Π₯ΠΎΡΡ, ΠΊΠ°ΠΊ ΠΌΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ Π½Π΅ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Git. Π’Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡΡ ΠΎΠ±ΡΡΠΈΡΡΡΡ Π³ΡΠ°ΠΌΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΡΠΈΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΎΠ±ΠΈΠ»ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ ΡΡΡΠΎΡΠΈΠ°Π»ΠΎΠ², ΡΡΠΎ Π·Π°Π΄Π°ΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅ ΡΠ°ΠΌΠΎΠΉ ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎΠΉ. ΠΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΎΠΏΡΡΠ°, ΠΌΠΎΠ³Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ²ΠΎΠ΄: Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΡΡΠΈΡΡ ΡΠ°ΠΌΡΠ΅ ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΡΡΠΏΠΈΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅.
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ Π±Ρ Ρ ΠΎΡΠ΅Π» Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΡΡΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ° ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ΠΉ ΠΎ Git. ΠΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΈΠ·Π»ΠΎΠΆΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ Ρ ΠΌΠ΅Π½Ρ Π±ΡΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΌΠΎΠΌΡ ΡΠ΅Π±Π΅ ΠΈΠ· ΠΏΡΠΎΡΠ»ΠΎΠ³ΠΎ. ΠΠ°ΠΊ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ Git ΠΎΡΠ΅Π½Ρ ΠΊΠΎΡΠΎΡΠΊΠΎ; Π° ΡΠΎΡΠ½Π΅Π΅ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ Π½Π°ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ.
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΡΠΎ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈ ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΎΠ½ΠΈ Π±ΡΠ²Π°ΡΡ.
Π‘ΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° Π΄Π²Π΅ Π³ΡΡΠΏΠΏΡ:
1. Π¦Π΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ;
2. Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
Git ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΉ ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΡΠ΄ΡΠ° Linux. ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Git Π·Π°Π²ΠΎΠ΅Π²Π°Π» ΠΎΠ³ΡΠΎΠΌΠ½ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ Π² IT ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ ΠΈ, ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, Π΅Π³ΠΎ ΡΠ°ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠΈΡΡ Π² ΡΡΠ΅ΠΊΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ.
ΠΠ°Π»Π΅Π΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΏΡΠΎ ΡΡΡΡΠΊΡΡΡΡ Git ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π·Π°Π²Π΅ΡΡΠΈ. ΠΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Ρ Π²Π°Ρ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Π² Git. Π’Π°ΠΊΠΆΠ΅ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΊΠ°ΠΊ ΠΎΡΠΊΠ°ΡΠΈΡΡ Π΅Π³ΠΎ Π΄ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ. Π, Π² Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, Ρ ΡΠ»Π΅Π³ΠΊΠ° Π·Π°ΡΡΠΎΠ½Ρ ΡΠ΅ΠΌΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Git
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΌΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Git.
ΠΠΈΠΆΠ΅ Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Ρ ΠΊΡΠ°ΡΠΊΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅, Π½ΠΎ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΉΡΠΈ ΠΏΠΎ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΈ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΡΡΠΎΠΌ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
Windows. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ ΠΈ ΡΠΊΠ°ΡΠ°ΠΉΡΠ΅ Git ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° (32 ΠΈΠ»ΠΈ 64-bit) ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΅Π³ΠΎ.
Linux. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ.
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π²Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° Ρ Git Π±ΡΠ΄Π΅Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Git Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ Π²ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Git ΠΈ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ Π²ΡΡΡΠ½ΡΡ, Π²Π½ΠΎΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Git ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ email ΠΈ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
Π ΡΡΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Git ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π°Π±ΠΎΡ ΡΠΊΡΠΈΠΏΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ git ΠΊΠΎΠΌΠ°Π½Π΄. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π²Π°ΡΠΈΠΌ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ.
ΠΠ°ΡΠ°Π»ΠΎΠ³ refs Ρ ΡΠ°Π½ΠΈΡ Π² ΡΠ΅Π±Π΅ ΠΊΠΎΠΏΠΈΡ ΡΡΡΠ»ΠΎΠΊ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΠ°Ρ .
ΠΠ°ΡΠ°Π»ΠΎΠ³ logs Ρ ΡΠ°Π½ΠΈΡ Π² ΡΠ΅Π±Π΅ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄Π»Ρ Π²ΡΠ΅Ρ Π²Π΅ΡΠΎΠΊ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΠ°ΡΠ°Π»ΠΎΠ³ objects Ρ ΡΠ°Π½ΠΈΡ Π² ΡΠ΅Π±Π΅ BLOB ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ SHA.
Π€Π°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ»ΠΈΡΠ½ΠΈΡ Π² ΡΡΠΎΡ ΡΠ°ΠΉΠ» ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ SHA Π²Π΅ΡΠΊΠΈ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
Π€Π°ΠΉΠ» Ρ ΡΠ°Π½ΠΈΡ Π² ΡΠ΅Π±Π΅ ΡΡΡΠ»ΠΊΠΈ Π² Π²ΠΈΠ΄Π΅ SHA Π½Π° Π²Π΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ Π² git fetch
Π€Π°ΠΉΠ» Ρ ΡΠ°Π½ΠΈΡ Π² ΡΠ΅Π±Π΅ ΡΡΡΠ»ΠΊΠΈ Π² Π²ΠΈΠ΄Π΅ SHA Π½Π° Π²Π΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ Π² git merge
Π€Π°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π² ΡΠ΅Π±Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π²Π°ΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°
Π‘Π°ΠΌΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Git.
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ, ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ΅ΠΉΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΠ½ΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, Π²Π΅Π΄Ρ, ΠΏΠΎ ΡΡΡΠΈ, Π΅ΡΠ»ΠΈ Π½Π΅ Π±ΡΠ°ΡΡ Π² ΡΠ°ΡΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Git Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΏΡΠΎΡΠΈΠ΅ ΠΏΠ»ΡΡΠΊΠΈ, ΡΠΎ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π²Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° ΡΡΠ΄ΠΎΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ:
1. ΠΠ½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ;
ΠΡΠ°ΠΊ, ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Π² ΡΡΠΎΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅. ΠΡΠΎΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π² Git ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π²Ρ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ Π²Π½ΠΎΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ°ΠΉΠ» `hello_world.txt` ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ Π΅Π³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.
ΠΠ²Π΅Π΄Π΅ΠΌ git status ΠΈ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠΎΠΌΠ°Π½Π΄Π° git status ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°(staging area). ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡΡΡ Git, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ», Git ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π΅Π³ΠΎ ΠΊΠ°ΠΊ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠΉ, ΠΈ ΡΡΡ ΠΆΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Π΄Π°Π»ΡΡΠ΅:
git add hello_world.txt
Π€Π°ΠΉΠ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² ΠΈΠ½Π΄Π΅ΠΊΡ. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΎΡΡΠ°Π²ΠΈΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
ΠΠΎΡΠΎΠ²ΠΎ! ΠΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π½Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ! ΠΠ°Π»Π΅Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² Π½Π°Ρ ΡΠ°ΠΉΠ» ΡΡΡΠΎΠΊΡ βHello, World!β, ΠΈ ΡΠ½ΠΎΠ²Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ git status:
Π§ΡΠΎ ΠΆ, ΠΌΡ Π½Π°ΡΡΠΈΠ»ΠΈΡΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΈ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΠ²ΠΎΠ΅ΠΉ ΠΌΠ°ΡΠΈΠ½Π΅, ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π²Π΅ΡΡΠΈΡ Π½Π°ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ. Π Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π½Π° GitHub.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ°ΠΊ ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ»ΡΡΠ°Π΅ Ρ GitHub ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ ΡΡΡ.
ΠΠ°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Git:
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Ρ ΡΡΡΠ»ΠΊΠΎΠΉ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. Π‘ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠ΅ΡΠ΅Π· ΡΡΡ ΡΡΡΠ»ΠΊΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
git remote add origin https://github.com/user/hello_world.git
ΠΠΎΡΠΎΠ²ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
Π Π°Π±ΠΎΡΠ° Ρ ΠΈΡΡΠΎΡΠΈΠ΅ΠΉ
ΠΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ, ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΌΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ.
ΠΠ°ΡΡΠ°Π»ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΡΡΠΎΡΠΈΠ΅ΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΊΠ°ΠΊ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΄ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ.
ΠΠ»Ρ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ Π² Git ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΡΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ· Π½ΠΈΡ :
ΠΠ°Π½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΉ Π²Π°ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ. ΠΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²Π΅ΡΡΠΌΠ° ΡΠ΄ΠΎΠ±Π½Π°, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Ρ Π²Π½ΠΎΡΠΈΠ»ΠΈ ΡΠ°Π½Π΅Π΅. ΠΠ»ΠΈ Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡ Π΄ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π² ΠΈΡΡΠΎΡΠΈΠΈ, Π»ΠΈΠ±ΠΎ Π΅ΡΠ»ΠΈ Π΅ΡΡΡ Π½ΡΠΆΠ΄Π° Π΅Ρ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ.
ΠΡΠ»ΠΈ Π²Π²Π΅ΡΡΠΈ git log Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ Π»ΠΈΠ±ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
git log ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π²Π»ΠΈΡΡΡ Π½Π° Π²ΡΠ²ΠΎΠ΄ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ. ΠΠ°ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π²ΡΠ±ΠΎΡ Π½Π° Π»ΡΠ±ΠΎΠΉ Π²ΠΊΡΡ.
Π₯ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°? ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°:
ΠΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π²ΡΠ²Π΅ΡΡΠΈ Π²ΡΠ΅ Π² ΠΎΠ΄Π½Ρ Π»ΠΈΠ½ΠΈΡ? ΠΠ°ΠΏΡΠΎΡΡΠΎ:
Π’Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ Π΄ΠΎ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ ΠΎΡΡΠ°Π²Π»Ρ ΡΡΡΠ»ΠΎΡΠΊΡ, ΠΏΠ΅ΡΠ΅ΠΉΠ΄Ρ ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Ρ Π½ΠΈΠΌΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅ΠΉ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ.
ΠΠΎΠΌΠ°Π½Π΄Π° git show ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π»ΡΠ±ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ Π² Git, Π±ΡΠ΄Ρ ΡΠΎ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠ»ΠΈ Π²Π΅ΡΠΊΠ°. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ git show ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ HEAD.
ΠΠ»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠ°Π±ΠΎΡΡ git show ΠΎΡΠ½Π°ΡΠ΅Π½ ΡΡΠ΄ΠΎΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½ΠΈΠΆΠ΅.
ΠΠ΄Π΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ½ Π² ΡΠ΅Π±Ρ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ.
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΠ²Π΅ΡΡΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠ»ΡΠΎΡΠΊΡΡΡΡΠΌ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠΌ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΌ id ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π½Π΅ Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
git show 349de9d..957e113
ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ Π»Π°ΠΊΠΎΠ½ΠΈΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π°, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΡ ΡΠΎΠΊΡΠ°ΡΠΈΠΌ id ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΊΠ»ΡΡΠΈΠΌ Π°Π²ΡΠΎΡΡΡΠ²ΠΎ ΠΈ Π΄Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ `git show` ΠΈ Ρ Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Ρ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅.
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π» HEAD. ΠΡΡΠ±ΠΎ Π³ΠΎΠ²ΠΎΡΡ, ΠΎΠ½Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΈΡΡΠΎΡΠΈΡ Π²ΡΠ΅Ρ Π²Π°ΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡ.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π²Π΄ΡΡΠ³ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ ΡΠ°ΡΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ°ΡΠΈΠ»ΠΈΡΡ Π½Π°Π·Π°Π΄, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΡΠ°ΡΡ Π½ΡΠΆΠ½ΠΎΠΉ Π²Π°ΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ.
ΠΡΠ²ΠΎΠ΄ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ `git reset`. ΠΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΄ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ.
ΠΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ ΡΡΠ΅ΠΌΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ:
ΠΠ°Π²Π°ΠΉΡΠ΅ Π²Π΅ΡΠ½Π΅ΠΌΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ:
ΠΡΠ°ΠΊ, Π² Ρ ΠΎΠ΄Π΅ Π½Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ, ΠΌΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΠ΅ΡΡΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΄ΠΎ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
ΠΠ°Π»Π΅Π΅, ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ:
ΠΠ°ΠΊ ΠΈ ΠΎΠΆΠΈΠ΄Π°Π»ΠΎΡΡ, ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ HEAD ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΠ»ΡΡ Π½Π° Π²ΡΠΎΡΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΎΡΡΠ°Π»ΠΎΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΡΠΌ.
ΠΡΠΎΠ²Π΅ΡΠΈΠΌ git status:
Π‘Π½ΠΎΠ²Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ git status :
ΠΠ΄Π΅ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ HEAD ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΠ»ΡΡ Π½Π° Π²ΡΠΎΡΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, Π° Π²ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΡΡΠ΅ΡΡΡ, ΡΡΠΎ Π²ΠΈΠ΄Π½ΠΎ ΠΏΠΎ ΠΏΡΡΡΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈ Π·ΠΎΠ½Π΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ².
Π Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠ΅ΠΉΡΠ°Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π°, ΡΠΎ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΡ ΡΡΡΠΎΠΊΡ βHello, world!β, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Ρ Π²Π°ΠΌΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ»ΠΈ Π² ΡΠ°ΠΉΠ» Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅.
ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ Π² Git
ΠΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ. ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΡΠ°Π·Π½ΡΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π’ΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΡΠ°Π½ΡΡΠ΅ ΠΈΡΡΠΎΡΠΈΡ Π²Π°ΡΠ΅ΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ²Π»ΡΠ»Π° ΡΠΎΠ±ΠΎΠΉ ΠΏΡΡΠΌΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΡΡ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠΎΡΠΊΠ°Ρ .
ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, Π²Ρ Ρ ΠΊΠΎΠ»Π»Π΅Π³ΠΎΠΉ ΠΊΠΎΡΠΏΠΈΡΠ΅ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π²Π°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°Π΄ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΈΡΠ°ΠΌΠΈ, ΠΈ Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π½Π΅ ΠΌΠ΅ΡΠ°ΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ°Π·Π½ΡΡ Π²Π΅ΡΠΊΠ°Ρ , Π° ΠΏΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ ΡΠ»ΠΈΡΡ ΡΡΠΈ Π²Π΅ΡΠΊΠΈ Π² ΠΎΠ΄Π½Ρ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Ρ ΡΡΠΈΠΌ ΠΏΠΎΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅. Π£ Π½Π°Ρ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
Git ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ·Π΄Π°Π΅Ρ Π²Π΅ΡΠΊΡ master ΠΈ ΡΠΆΠ΅ Π²Π΅Π΄Π΅Ρ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ Π² Π½Π΅ΠΉ. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ Π² ΡΡΠΎΠΌ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π²Π²Π΅Π΄Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π½Π°ΠΌ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ Π²Π΅ΡΡΠΈ ΡΠ°Π±ΠΎΡΡ Π² Π½Π΅ΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ.
ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch
. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π²Π΅ΡΠΊΡ βdevβ:
Π’Π΅ΠΏΠ΅ΡΡ Π²Π²Π΅Π΄Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ²ΡΠ·Π΄ΠΎΡΠΊΠΎΠΉ Git ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π΄ΡΡΠ³ΡΡ Π²Π΅ΡΠΊΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout
. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠΌΡΡ Π½Π° Π²Π΅ΡΠΊΡ βdevβ.
Π’Π΅ΠΏΠ΅ΡΡ Π²Π½Π΅ΡΠ΅ΠΌ Π»ΡΠ±ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ» hello_world.txt ΠΈ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΡΡ Π½Π°ΡΠΈ Π²Π΅ΡΠΊΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π½Π° Π²Π΅ΡΠΊΡ master
git checkout master
ΠΠΎΠΌΠΈΠΌΠΎ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ Π² Git ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡ Π²ΠΎΠ΅Π΄ΠΈΠ½ΠΎ Π΄Π²Π° ΠΏΠΎΡΠΎΠΊΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π½Π°ΡΡ ΠΏΡΠΎΠ΄Π΅Π»Π°Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΡ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ»ΠΈΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² master. Π’Π°ΠΊΠΎΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git merge
. Π’ΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΌΡ Ρ
ΠΎΡΠΈΠΌ ΡΠ»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π²Π΅ΡΠΊΠΈ βdevβ Π² Π²Π΅ΡΠΊΡ βmasterβ, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° Π²Π΅ΡΠΊΡ βmasterβ ΠΈ Π² Π½Π΅ΠΉ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ:
ΠΡΠΈΠΌΠ΅ΡΡ Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΎΡ ΡΡΠ°ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΊ ΠΊΠΎΠ½ΡΡ, Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Ρ ΠΎΡΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΡΡΠΎΡΠΈΠΈ Π² Git.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π²Π°Ρ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ ΡΠΎΠ±Π»ΡΠ΄Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ°Π²ΠΈΠ», ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ°Π±ΠΎΡΠΎΠΉ Π²Π°Ρ ΠΌΠΎΠ³ΡΡ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠ΅ΠΉ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ Π² ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΡΡΡ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΡΠ°Π±ΠΎΡΠ°Ρ.
1. Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°:
ΠΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΡΠ°Π±Π»ΠΎΠ½ Π½Π°ΡΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡΠ°:
ΠΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π΄Π°ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΠΎΠΈΡΠΊΠ° ΡΠ°Π±ΠΎΡΡ Π² ΠΈΡΡΠΎΡΠΈΠΈ.
ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΡΠΎΡΠΌΠ°ΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ ΠΊΠ°ΠΊΠΎΠΉ ΡΡΠΎΠ½Ρ ΡΠ°Π±ΠΎΡΡ Π±ΡΠ» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ Π² ΡΡΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅.
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ:
2. Π‘ΡΡΠ°ΡΠ΅Π³ΠΈΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ:
Π Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΠΈΡΠ°ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΉ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ. ΠΡΠ΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ, Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ.
Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΌΡ Π²ΡΠ΄Π΅Π»ΡΠ΅ΠΌ Π΄Π²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²Π΅ΡΠΊΠΈ master ΠΈ «release». Master ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΊ Π²ΡΠΊΠ»Π°Π΄ΠΊΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ΄ ΠΏΠΎΠΏΠ°Π²ΡΠΈΠΉ Π² «master» ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡ, ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ±ΠΎΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΡΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π΄ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ. ΠΠ°Π»Π΅Π΅ Π΅ΡΠ»ΠΈ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠΉ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ Π½Π΅Ρ, ΠΌΡ ΡΠ»ΠΈΠ²Π°Π΅ΠΌ Π²Π΅ΡΠΊΡ «master» Π² Π²Π΅ΡΠΊΡ «release». Π’Π°ΠΌ ΡΠ½ΠΎΠ²Π° Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡ, ΠΈ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΊ Π²ΡΠΊΠ»Π°Π΄ΠΊΠ΅ Π² ΠΌΠ°ΡΠΊΠ΅ΡΡ.
ΠΠ»Ρ Π²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ feature Π²Π΅ΠΊΡΠΈ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ Π²Π΅ΡΠΊΠ° ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π²Π½Π΅Π΄ΡΠΈΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π² ΠΎΠ±Π»Π°ΠΊΠ΅, ΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ «feature-cloud» ΠΈ Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΡΠΈ ΡΠ°Π±ΠΎΡΡ Π² Π½Π΅ΠΉ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ΅Π½ΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ Π·Π°ΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΡ ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ Π½Π°Π²ΡΠΊΠΎΠ², ΠΎΡΡΠ°Π²Π»Ρ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΡΠ΅Π½Π°ΠΆΠ΅Ρ Π΄Π»Ρ Git.
Π ΡΠ°ΠΊΠΆΠ΅ Π½Π° ΠΊΠ½ΠΈΠ³ΠΈ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠ΅ΡΡΡΡΡ:
Π’Π°ΠΊΠΆΠ΅ Π±ΡΠ»ΠΎ Π±Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΏΠΎ Git Π΅ΡΡΡ Ρ Π²Π°Ρ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π°ΡΡ.
In Git, what is the difference between origin/master vs origin master?
I know, origin is a term for the remote repository and master is the branch there.
I am purposely omitting the «context» here and I am hoping that the answer should not depend upon the context. So in git command lines, what is the difference between origin/master and origin master. Is there a non-ambiguous way to understand when to use origin/master and when I should use origin master?
7 Answers 7
(Note: When this question was originally posted, «master» was the default name for branches in Git. Since «main» is now the default name, this answer has been updated to use «main», in the hope that this will be more natural for people new to Git.)
There are actually three things here: origin main is two separate things, and origin/main is one thing. Three things total.
Is origin/main remote?
Example: pull in two steps
Since origin/main is a branch, you can merge it. Here’s a pull in two steps:
Then you can push your new changes in main back to origin :
More examples
You can fetch multiple branches by name.
You can merge multiple branches.
Can you use a different name?
I can do that easily enough:
Example (in local branch master ):
origin/master is the remote master branch
You would use origin master when pushing, for example. git push origin master is simply telling GIT to push to the remote repository the local master branch.
origin is a name for remote git url. There can be many more remotes example below.
It is possible that remote bangalore has advanced since you have done «fetch» or «pull»
origin is nothing but the original name given to the remote repository. Origin is just a location that’s all. In the below example the repository URL is the origin or the source of truth of where your code resides.
now this origin or the source of truth to you repository can have branches this includes master or develop or you name it.
Now taking origin in the context we can easily under the below things mean.
So if I type git pull origin master What happens?.
This will update my local master branch (on my local machine) will all changes available on the remote master branch (i.e. origin master).
Now I would like my changes to merged with my local master branch how can I achieve this?
git merge origin/master
This will update my local master branch with my changes. The reason to have origin/master is just naming convention you could have named your local master branch origin/master or abcd. So you could have named you local branch instead of origin/master to just master and the command for git would be git merge master.
How would I update my remote master branch with all the local changes?