Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π°ΠΌ Git/GitHub. Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Π΄Π»Ρβ¦ | by Vlad Kopenkin
ΠΡΠ»ΠΈ ΠΡ Π²ΡΡ Π΅ΡΠ΅ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΈ Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ Π²Ρ ΠΎΠ΄ΠΈΡ Π² ΠΠ°Ρ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, ΡΠΎ ΡΠ΅ΠΉΡΠ°Ρ — ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°ΡΠ°ΡΡ! ΠΡΠΎ ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡΡΠ΅Π΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΠ°ΠΌ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Git ΠΈ Π΄Π°ΡΡ ΠΠ°ΠΌ ΠΏΡΠΎΡΠ½ΡΠΉ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½Ρ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΡ. Git ΠΏΠΎΡΡΠΈ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° Π»ΡΠ±ΠΎΠΌ ΡΠ΅ΡΡΡΠ·Π½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΈ ΡΠ΅ΠΌ ΡΠ°Π½ΡΡΠ΅ ΠΡ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅Π½Π½ΡΠΌ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠΌ ΠΡ ΡΡΠ°Π½Π΅ΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΠΎΠ΄Π°ΡΠ΅Π»Π΅ΠΉ. Π’Π°ΠΊ ΠΆΠ΅, ΡΡΠΎ ΡΠ»ΡΡΡΠΈΡ ΠΠ°Ρ Π»ΠΈΡΠ½ΡΠΉ ΠΎΠΏΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΡ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°ΠΌΠΈ, Π½Π΅ Π²ΠΎΠ»Π½ΡΡΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· ΡΠ»ΡΡ Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»ΠΈβ¦ Π Π°Π±ΠΎΡΠ° Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΡΠ°Π½Π΅Ρ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π»Π΅Π³ΡΠ΅. ΠΡΠ²Π°Π»ΠΈ Π»ΠΈ Ρ ΠΠ°Ρ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ ΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΡΡ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΌ, ΡΡΠΎ ΠΊΠ°Π·Π°Π»ΠΎΡΡ, Π±ΡΠ΄ΡΠΎ Π±ΡΠ»ΠΎ Π±Ρ Π»Π΅Π³ΡΠ΅ Π½Π°ΡΠ°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Ρ Π½ΡΠ»Ρ? Π‘ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, Π±Π΅Π· Π²ΡΠ΅Π³ΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎ ΠΡ ΡΡΠΏΠ΅Π»ΠΈ Π²ΠΎΠΏΠ»ΠΎΡΠΈΡΡ Π² 4 ΡΠ°ΡΠ° ΡΡΡΠ°.
Git — ΡΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΠΎ ΡΡΡΠ΅ΡΡΠ²Ρ ΡΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΎΠ½Π° Ρ
ΡΠ°Π½ΠΈΡ Π²ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΡΠΎΡΠΈΡ ΠΠ°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ ΠΠ°ΡΠΈΡ
ΠΊΠΎΠ»Π»Π΅Π³ — Ρ Π²ΡΠ΅Π³ΠΎ Π±ΡΠ΄Π΅Ρ ΠΊΠΎΠΏΠΈΡ. ΠΡΠΎ ΠΏΠΎΠ»Π½Π°Ρ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡΡ SVN, Π³Π΄Π΅ Π²ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Ρ
ΡΠ°Π½ΠΈΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
GitHub, ΡΠ°ΡΡΠΎ ΠΏΡΡΠ°ΡΡ Ρ Git. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ — ΡΡΠΎ Ρ ΠΎΡΡΠΈΠ½Π³ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π². ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΠ°ΠΌ ΠΏΠΎΠΊΠ° Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π½ΠΎ Π½Π΅ ΡΠΏΠ΅ΡΠΈΡΠ΅ Π·Π°ΠΊΡΡΠ²Π°ΡΡ ΡΡΠ°ΡΡΡ, ΠΊ ΠΊΠΎΠ½ΡΡ Π²ΡΡ ΠΏΡΠΎΡΡΠ½ΠΈΡΡΡ. ΠΠΊΡΠ°ΡΡΠ΅, GitHub — ΡΡΠΎ ΡΠΎ ΠΌΠ΅ΡΡΠΎ, ΠΊΡΠ΄Π° ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Git.
Git Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΡΠ΄ΡΡΠ½ΡΠΉ ΠΈ Π²ΡΡΡΠΈΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ· Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π΅ ΡΠ°ΠΊ-ΡΠΎ ΠΏΡΠΎΡΡΠΎ, Π½ΠΎ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ Π²ΡΠ΅Π³ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΏΠΎΠ½ΡΡΠΈΠΉ. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git, ΡΠ΅ΠΌ ΡΠ°ΡΠ΅ ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Ρ ΡΠΈΡΡΠ°ΡΠΈΠ΅ΠΉ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΡΠ°Π»ΡΠ½ΡΡ Π·Π½Π°Π½ΠΈΠΉ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, Π½ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ΄ΡΡ ΠΊ ΠΠ°ΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡΡ. Π’Π°ΠΊ ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΊΠ°ΠΊ ΡΡΠ°ΠΌΠΏΠ»ΠΈΠ½, Π½Π΅ Π·Π°Π±ΡΠ²Π°Ρ ΠΎ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΡΠ°Π·Π²ΠΈΡΠΈΠΈ.
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΈΠΌ Git. ΠΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Windows Ρ ΡΠΎΠ²Π΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈ Git Bash, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Git. ΠΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Mac, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Terminal Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΌ. ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΡΡΡΠΏΠ°ΠΉΡΠ΅ ΠΊ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° GitHub. ΠΡΠ°ΠΊ, Ρ ΠΠ°Ρ Π΅ΡΡΡ Git, ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΈ GitHub Π°ΠΊΠΊΠ°ΡΠ½Ρ, ΠΊΡΠ΄Π° ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΠ²ΠΎΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Git Bash ΠΈΠ»ΠΈ Terminal ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΊΠΎΡΠ½Π΅Π²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠ»ΠΈ ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Git Bash, ΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠ°Π²ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ βGit Bash Hereβ ΠΈ ΠΎΠ½ Π·Π°ΠΏΡΡΡΠΈΡΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ.
git init
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°ΡΡ .git ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΠ»ΠΈ βrepoβ ΡΡΠΎ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π²ΡΠ΅Ρ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Ρ Π½Π° ΠΏΡΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π²ΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π΄Π»Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
git config --global user.name "ΠΠ°ΡΠ΅ ΠΠΌΡ"
ΠΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ commit(ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ).
git config --global user.email "ΠΠ°ΡΠ°ΠΠΎΡΡΠ°@mail.com" ΠΡ
ΡΡΠΎΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΡΠ΅Π³ΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Git.
git add ΠΈΠΌΡΠ€Π°ΠΉΠ»Π°.ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅
ΠΠ°ΠΌΠ΅Π½ΠΈΡΠ΅ βΠΈΠΌΡΠ€Π°ΠΉΠ»Π°.ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅β
Π½Π° Π»ΡΠ±ΠΎΠΉ ΡΠ°ΠΉΠ», ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΡ ΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ βindex.htmlβ. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ ΡΠ°ΠΉΠ» Π² βstaging areaβ(ΡΡΠ°ΡΡΠΎΠΊ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ). ΠΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°ΠΉΡΠ΅ staging area, ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΠΈΡ Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΎΡ
ΠΎΠ΄ΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΡ ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π² ΠΠ°Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
git add .
ΠΡΠ»ΠΈ ΠΡ Ρ
ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΡ ΠΈΠ· Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² staging area, ΡΠΎ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΄Π΅Π»Π°Π΅Ρ Π²ΡΡ ΡΠ°ΠΌΠ°.
git add *.html
ΠΡΠ»ΠΈ ΠΡ Ρ
ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .html Π² staging area ΡΠΎ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ. Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠ΅Π½ΠΈΠΉ.
git status
ΠΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΡΠΎ ΡΠΆΠ΅ Π±ΡΠ»ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π² staging area ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ ΠΈ ΠΆΠ΄ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π² staging area.
git reset ΠΈΠΌΡΠ€Π°ΠΉΠ»Π°.
Π£Π±ΠΈΡΠ°Π΅Ρ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» ΠΈΠ· staging area. ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅
git rm --cached ΠΈΠΌΡΠ€Π°ΠΉΠ»Π°.ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅
Π£Π±ΠΈΡΠ°Π΅Ρ ΡΠ°ΠΉΠ» ΠΈΠ· staging area ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΠΌΡΠΉ.
git commit -m "ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°"
ΠΠ΅ΡΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· staging area ΠΈ βΡΠΈΠΊΡΠΈΡΡΠ΅Ρβ ΠΈΡ
Π² ΠΠ°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. Π ΠΊΠ°Π²ΡΡΠΊΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΡΠ°Π²ΠΈΡΡ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠΎΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΎΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡ ΠΊΡΠ°ΡΠΊΠΈΠΌΠΈ Π΄Π΅ΡΠ°Π»ΡΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: βΡΡΡΡΠ°Π½ΠΈΠ» ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρβ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ βΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡβ
touch .gitignore
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ .gitignore. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΡΡΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΡΠΎΡΡΡ
ΠΡ Π½Π΅ Ρ
ΠΎΡΠ΅Π»ΠΈ Π±Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ (ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Git). ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΠΌΡΡ
ΡΠ°ΠΉΠ»Π°Ρ
Π½Π΅ Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ git status
.
git branch Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΠ΅ΡΠΊΠΈ
Π‘ΠΎΠ·Π΄Π°Π΅Ρ ΡΡΡΠ½ΠΎΡΡΡ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ branch(Π²Π΅ΡΠ²Ρ). ΠΠ΅ΡΠ²Ρ — ΡΡΠΎ ΡΠΎΡΠ½Π°Ρ ΠΊΠΎΠΏΠΈΡ ΠΠ°ΡΠΈΡ
ΡΠ°ΠΉΠ»ΠΎΠ².
git checkout βΠ½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΠ΅ΡΠΊΠΈβ
ΠΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΠ°ΠΌ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠΉ ΠΠ°ΠΌΠΈ Π²Π΅ΡΠΊΠΎΠΉ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π΅Ρ ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ
. ΠΠ΄Π΅ΡΡ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ Π»ΡΠ±ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°. ΠΠΎΠ³Π΄Π° ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ Π³ΠΎΡΠΎΠ²Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ commit ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² GitHub (ΠΎΠ± ΡΡΠΎΠΌ Π½ΠΈΠΆΠ΅) ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠ²Ρ, Π΅ΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ ΠΈΠ»ΠΈ ΠΠ°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π² ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅.
git merge Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΠ΅ΡΠΊΠΈ
ΠΠ°Ρ
ΠΎΠ΄ΡΡΡ Π² Master(Π³Π»Π°Π²Π½ΠΎΠΉ) Π²Π΅ΡΠ²ΠΈ, ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ Π²Π·ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈΠ· Π»ΡΠ±ΠΎΠΉ ΠΈΠ· Π²Π΅ΡΠ²Π΅ΠΉ ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ
Π²ΠΌΠ΅ΡΡΠ΅.
git remote add origin https://github.com/ΠΈΠΌΡΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΏΡΠΎΠ΅ΠΊΡ.git
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ βΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅β ΠΠ°ΡΠ΅Π³ΠΎ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΡ ΡΡΠΎ Π±ΡΠ»ΠΎ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΠ»ΠΎ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π½Π° ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² GitHub Π°ΠΊΠΊΠ°ΡΠ½Ρ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΡΠ΄Π° ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. After you created your remote repository you will be provided with a link and that link is the location you will want to use in the above command.
git remote
ΠΡΠ²Π΅Π΄Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ· Π²ΡΠ΅Ρ
ΡΠ΄Π°Π»ΡΠ½Π½ΡΡ
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΊ ΠΠ°ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ.
git push -u origin master
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡΠΏΡΠ°Π²ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΡΠΎΠΈΡ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°Π·.
git push
This is what you will use to push your code to GitHub after your initial push.
git clone https://github.com/ΠΈΠΌΡΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ/ΠΏΡΠΎΠ΅ΠΊΡ.git
ΠΡΠ»ΠΈ Ρ ΠΠ°Ρ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° Π»ΠΈΡΠ½ΠΎΠΌ ΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, ΡΠΎ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ/Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π²Π΅ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π² ΡΠ΅ΠΊΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ.
git pull
ΠΡΠ»ΠΈ ΠΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π»ΡΠ΄ΡΠΌΠΈ, ΡΠΎ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΈΠ· ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ.
ΠΠ°Π΄Π΅ΡΡΡ ΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΠ°ΠΌ Π½Π°ΡΠ°ΡΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΡΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ. ΠΡΠ΄Ρ ΡΠ°Π΄ ΠΏΠΎΠΌΠΎΡΡ Ρ ΡΡΠΎΡΠ½Π΅Π½ΠΈΡΠΌΠΈ ΠΈ ΠΎΡΠ²Π΅ΡΠ°ΠΌΠΈ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
.
ΠΡΠΈΠ³ΠΈΠ½Π°Π» ΡΡΠ°ΡΡΠΈ — ΡΡΡΠ»ΠΊΠ°
Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ Git. ΠΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ git Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ .
Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ GitΠΠ°ΠΊ Π²ΡΠΏΠΈΡΠ°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ github
- Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°Β project_name, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Π½Π΅Π΅.
- ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git clone [emailΒ protected]:devlabuser/sharp.git ./
- Β«./» ознаΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½ΡΠΆΠ½ΠΎ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ.
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ Π²ΡΠΏΠΈΡΠ°Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉΒ master. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π²Π΅ΡΠΊΠΈ, ΠΈΠ»ΠΈ Π²ΡΠΏΠΈΡΡΠ²Π°ΡΡ ΡΒ githubΒ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅.
ΠΠ°ΠΊ Π²ΡΠΏΠΈΡΠ°ΡΡ Π²Π΅ΡΠΊΡ Ρ github
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΡΒ Β«checkout» моТно Π²ΡΠΏΠΈΡΠ°ΡΡ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ Π²Π΅ΡΠΊΡ Ρ github:
$ git checkout -b dev origin/dev $ git checkout -b project_branch origin/project_branch
ΠΠ»ΠΈ ΡΠ°ΠΊ, ΡΡΠΎ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°Π΄Π΅ΠΆΠ½Π΅Π΅:
$ git checkout --track origin/production
ΠΡΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π»Π°, Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅:
$ git remote update
ΠΡΠ»ΠΈ Π²ΡΡΠ΅ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π»ΠΈ, Π²ΡΠ΄Π°Π»ΠΈ ΠΎΡΠΈΠ±ΠΊΡ, ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Ρ Π½Π΅ΠΉ Π½Π΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½ΡΠΆΠ½ΡΡ Π²Π΅ΡΠΊΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ:
git checkout -b project_branch git pull origin project_branch
Π’. Π΅. ΡΠ½Π°ΡΠ°Π»Π° ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π° Π·Π°ΡΠ΅ΠΌ Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π² Π½Π΅Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π²Π΅ΡΠΊΠΈ Π½Π° github.
Β
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
- Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
$ git checkout -b dev Switched to a new branch 'dev'
2. ΠΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ Π΅Π΅ Π½Π° github:
$ git push origin dev Total 0 (delta 0), reused 0 (delta 0) To [emailΒ protected]:devlabuser/sharp.git * [new branch] dev -> dev
ΠΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π΄ΡΡΠ³ΡΡ Π²Π΅ΡΠΊΡ Π² git
$ git checkout project2_branch
ΠΡΠ»ΠΈ Π²Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ°ΠΉΠ», ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΡΡ Π΅Π³ΠΎ ΠΈΠ· Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°:
$ git checkout readme.txt
ΠΠ°ΠΊ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²Π΅ΡΠΎΠΊ
ΠΠΎΠΌΠ°Π½Π΄Π°Β Β«branch» позволΡΠ΅Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²Π΅ΡΠΎΠΊ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. Π’Π΅ΠΊΡΡΠ°Ρ Π²Π΅ΡΠΊΠ° Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π° Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΎΠΉ:
$ git branch * dev master
ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ commit
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π² Π½Π΅ΠΉ Π½ΡΠΆΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
- Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git status
2. ΠΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π² Π½Π΅Π³ΠΎ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git add <file1> <file2> ...
ΠΠ»ΠΈ ΡΠ΄Π°Π»ΡΠ΅ΠΌ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ:
$ git rm <file1> <file2> ...
3. ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ:
$ git commit -m 'ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ'
4. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²Π΅ΡΠΊΠΈ β dev ΠΈ master. Dev β ΠΎΠ±ΡΠ°Ρ Π²Π΅ΡΠΊΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠ². ΠΠΌΠ΅Π½Π½ΠΎ Π² Π½Π΅Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π²ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΡΠΌ ΡΠ΅Π»ΠΈΠ·ΠΎΠΌ. Master β Π²Π΅ΡΠΊΠ° Π΄Π»Ρ Π²ΡΠΊΠ»Π°Π΄ΠΊΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° Π½Π° Π±ΠΎΠ΅Π²ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°.
ΠΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π½Π°Π΄ΠΎ Π²Π»ΠΈΡΡ Π² Π½Π°ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π²Π΅ΡΠΊΠΈ dev ΠΈ master:
$ git pull origin dev $ git pull origin master
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΠ° Π²Π΅ΡΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈ Π²ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎ Π΄ΡΡΠ³ΠΈΠΌ Π·Π°Π΄Π°ΡΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΏΠ΅Π»Π° Π²Π½Π΅ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°.
5. ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ Π½Π° Π²Π΅ΡΠΊΡ dev:
$ git checkout dev
6. ΠΠ»ΠΈΠ²Π°Π΅ΠΌ Π² dev ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π²Π΅ΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
$ git merge project_branch
7. ΠΠ°Π»ΠΈΠ²Π°Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π²Π΅ΡΠΊΠΈ dev Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ:
$ git push origin dev Counting objects: 4, done. Delta compression using up to 2 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 286 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To [emailΒ protected]:devlab/sharp.git d528335..9a452d9 dev -> dev
pushΒ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΡΠΎΠΉΡΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉΒ origin/devΒ ΠΎΠ±ΠΎΠ³Π½Π°Π» Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π΅Π³ΠΎ ΠΊΠΎΠΏΠΈΡ.
Β
ΠΠ°ΠΊ ΡΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ Π±ΠΈΠ½Π°ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΏΡΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠΈ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ git Π²ΡΠ΄Π°Π» ΠΎΡΠΈΠ±ΠΊΡ. ΠΠΎΠΌΠ°Π½Π΄Π°Β git statusΒ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ΅:
$ git status ... Unmerged paths: (use "git add <file>..." to mark resolution) both modified: root/css/styles.css.gz $ git diff root/css/styles.css.gz diff --cc root/css/styles.css.gz index 970c721,bc6d170..0000000 Binary files differ
ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΠΈΠ½Π°ΡΠ½ΡΠΌ (ΡΡΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π°ΡΡ ΠΈΠ²Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ Ρ.ΠΏ.), ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ β Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
Π§ΡΠΎΠ±Ρ ΡΠ΅ΡΠΈΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ, Π½Π°Π΄ΠΎ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ±ΡΠ°ΡΡ β ΠΊΠ°ΠΊΠ°Ρ Π²Π΅ΡΡΠΈΡ ΡΠ°ΠΉΠ»Π° Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ: Π²Π°ΡΠ° ΠΈΠ»ΠΈ ΠΈΠ· Π²Π»ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Π²Π΅ΡΠΊΠΈ. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΡΠ°ΠΉΠ»Π°, Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git checkout --ours binary.dat git add binary.dat
ΠΡΠ»ΠΈ ΠΌΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π²Π΅ΡΡΠΈΡ ΠΈΠ· Π²Π»ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Π²Π΅ΡΠΊΠΈ:
git checkout --theirs binary.dat git add binary.dat
Β«oursΒ» β ΠΎΡ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ Β«Π½Π°ΡΒ», Β«theirsΒ» β ΠΎΡ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ Β«ΠΈΡ Β».
Β
ΠΠ°ΠΊ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
git logΒ β ΠΏΡΠΎΡΠΌΠΎΡΡ Π»ΠΎΠ³ΠΎΠ².
$ git log commit 9a452d9cdbdb57e7e4f2b09f8ce2f776cd56657a Author: DevLab User <[emailΒ protected]> Date: Wed Jul 31 18:35:47 2013 +0400 first commit commit d528335724dfc15461996ed9d44d74f23ce6a075 Author: DevLab User <[emailΒ protected]> Date: Wed Jul 31 06:24:57 2013 -0700 Initial commit
ΠΡΠ²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ΅ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ:
git log --pretty=oneline 9a452d9cdbdb57e7e4f2b09f8ce2f776cd56657a first commit d528335724dfc15461996ed9d44d74f23ce6a075 Initial commit
ΠΠ»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈΒ git logΒ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΡΠΈΠΊ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² ΠΊΠΎΠ½ΡΠΈΠ³Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. d528335 (devlabuser 2013-07-31 06:24:57 -0700 2) =====
git annotate, Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°Ρ , Π³Π΄Π΅ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ:
$ git annotate readme.txt 9a452d9c (DevLab User 2013-07-31 18:35:47 +0400 1)Text
ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΠΎΡΠΊΠ°Ρ
- git logΒ β ΠΏΡΠΎΡΠΌΠΎΡΡ Π»ΠΎΠ³ΠΎΠ², ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π΄Π΅Π»ΡΡΡ (ΡΠ°Π·Π½ΠΈΡΡ/diff), ΠΏΡΠΈΠ²Π½Π΅ΡΠ΅Π½Π½ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ.
commit 9a452d9cdbdb57e7e4f2b09f8ce2f776cd56657a Author: devlabuser <[emailΒ protected]> Date: Wed Jul 31 18:35:47 2013 +0400 first commit commit d528335724dfc15461996ed9d44d74f23ce6a075 Author: devlabuser <[emailΒ protected]> Date: Wed Jul 31 06:24:57 2013 -0700 Initial commit
- ΠΠΎΠΏΠΈΡΡΠ΅ΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π΄ΠΎ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΎΡΠΊΠ°Ρ.
- ΠΡΠΊΠ°ΡΡΠ²Π°Π΅ΠΌΡΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° (ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ):
$ git reset --hard 9a452d955bdb57e7e4f2b09f8ce2fbb6cd56377a HEAD is now at 9a45779 first commit
ΠΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ°ΡΠΈΡΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ Π²Π΅ΡΠΊΠΈ:
$ git reset --hard origin/dev HEAD is now at 9a45779 first commit
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΡΠΊΠ°Ρ ΡΠ΄Π΅Π»Π°Π½, ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ push Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, git ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΠ°ΡΡ ΡΡΠ³Π°ΡΡΡΡ, ΡΡΠΎ Π²Π΅ΡΡΠΈΡ Π²Π°ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ ΠΌΠ»Π°Π΄ΡΠ΅ ΡΠ΅ΠΌ Π½Π° github ΠΈ Π²Π°ΠΌ Π½Π°Π΄ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ pull. ΠΡΠΎ Π»Π΅ΡΠΈΡΡΡ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠΌ:
git push -f origin master
Β
ΠΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ
git mergeΒ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π² ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ.
$ git merge origin/ticket_1001_branch
git pull Π·Π°Π±ΠΈΡΠ°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π²Π΅ΡΠΊΠΈ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Ρ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ.
$ git pull origin ticket_1001_branch
git pullΒ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡΒ git mergeΒ ΡΠ΅ΠΌ, ΡΡΠΎΒ mergeΒ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ, Π° pull ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ β Π·Π°ΠΊΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°.Β mergeΒ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ Π²Π΅ΡΠΎΠΊ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ,Β pullΒ β ΡΠ»ΠΈΡΠ½ΠΈΡ Π²Π΅ΡΠΎΠΊ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ Π»Π΅ΠΆΠΈΡ Π½Π° github.
Β
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
$ mkdir project_dir $ cd project_dir $ git init
git cherry-pick
git cherry-pickΒ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΎΠ΄ΠΈΠ½-Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΊ Π΄Π΅ΡΠ΅Π²Ρ Π΄ΡΡΠ³ΠΎΠΉ.
- ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΈΡΠ°ΡΡ Π²Π΅ΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅ΠΌ Π²Π»ΠΈΠ²Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡ:
git checkout master
2. ΠΠ±Π½ΠΎΠ²ΠΈΡΡ Π΅Π΅:
git pull origin master
3. ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΌΠΈΡΠ°:
git cherry-pick eb042098a5
4. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅:
git push origin master
Β
ΠΠ°ΠΊ ΡΠ°ΡΠΊΡΠ°ΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΡΠ±Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΒ .gitΒ . ΠΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°ΠΉΠ»Β configΒ .
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = [emailΒ protected]:devlab/sharp.git [branch "master"] remote = origin merge = refs/heads/master [branch "dev"] remote = origin merge = refs/heads/dev
Π§ΡΠΎΠ±Ρ ΡΠ°ΡΠΊΡΠ°ΡΠΈΡΡ Π²ΡΠ²ΠΎΠ΄ git, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΠ°ΠΉΠ» Π±Π»ΠΎΠΊΒ [color]:
[color] branch = auto diff = auto interactive = auto status = auto ui = auto
Β
Β
Β
Β
Setup
ββ
git clone <repo>
clone the repository specified by <repo>; this is similar to Β«checkoutΒ» in
some other version control systems such as Subversion and CVS
Add colors to your ~/. gitconfig file:
[color]
ui = auto
[color Β«branchΒ»]
current = yellow reverse
local = yellow
remote = green
[color Β«diffΒ»]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color Β«statusΒ»]
added = yellow
changed = green
untracked = cyan
Highlight whitespace in diffs
[color]
ui = true
[color Β«diffΒ»]
whitespace = red reverse
[core]
whitespace=fix,-indent-with-non-tab,trailing-space,cr-at-eol
Add aliases to your ~/.gitconfig file:
[alias]
st = status
ci = commit
br = branch
co = checkout
df = diff
dc = diff βcached
lg = log -p
lol = log βgraph βdecorate βpretty=oneline βabbrev-commit
lola = log βgraph βdecorate βpretty=oneline βabbrev-commit βall
ls = ls-files
# Show files ignored by git:
ign = ls-files -o -i βexclude-standard
Configuration
ββββ-
git config -e [βglobal]
edit the . git/config [or ~/.gitconfig] file in your $EDITOR
git config βglobal user.name βJohn Doeβ
git config βglobal user.email [emailΒ protected]
sets your name and email for commit messages
git config branch.autosetupmerge true
tells git-branch and git-checkout to setup new branches so that git-pull(1)
will appropriately merge from that remote branch. Recommended. Without this,
you will have to add βtrack to your branch command or manually merge remote
tracking branches with Β«fetchΒ» and then Β«mergeΒ».
git config core.autocrlf true
This setting tells git to convert the newlines to the systemβs standard
when checking out files, and to LF newlines when committing in
git config βlist
To view all options
git config apply.whitespace nowarn
To ignore whitespace
You can add Β«βglobalΒ» after Β«git configΒ» to any of these commands to make it
apply to all git repos (writes to ~/.gitconfig).
Info
β-
git reflog
Use this to recover from *major* mess ups! Itβs basically a log of the
last few actions and you might have luck and find old commits that
have been lost by doing a complex merge.
git diff
show a diff of the changes made since your last commit
to diff one file: Β«git diff β <filename>Β»
to show a diff between staging area and HEAD: `git diff βcached`
git status
show files added to the staging area, files with changes, and untracked files
git log
show recent commits, most recent on top. Useful options:
βcolor with color
βgraph with an ASCII-art commit graph on the left
βdecorate with branch and tag names on appropriate commits
βstat with stats (files changed, insertions, and deletions)
-p with full diffs
βauthor=foo only by a certain author
βafter=Β»MMM DD YYYYΒ» ex. (Β«Jun 20 2008β³) only commits after a certain date
βbefore=Β»MMM DD YYYYΒ» only commits that occur before a certain date
βmerge only the commits involved in the current merge conflicts
git log <ref>..<ref>
show commits between the specified range. Useful for seeing changes from remotes:
git log HEAD..origin/master # after git remote update
git show <rev>
show the changeset (diff) of a commit specified by <rev>, which can be any
SHA1 commit ID, branch name, or tag (shows the last commit (HEAD) by default)
also to show the contents of a file at a specific revision, use
git show <rev>:<filename>
this is similar to cat-file but much simpler syntax.
git show βname-only <rev>
show only the names of the files that changed, no diff information.
git blame <file>
show who authored each line in <file>
git blame <file> <rev>
show who authored each line in <file> as of <rev> (allows blame to go back in
time)
git gui blame
really nice GUI interface to git blame
git whatchanged <file>
show only the commits which affected <file> listing the most recent first
E.g. view all changes made to a file on a branch:
git whatchanged <branch> <file> | grep commit | \
colrm 1 7 | xargs -I % git show % <file>
this could be combined with git remote show <remote> to find all changes on
all branches to a particular file.
git diff <commit> head path/to/fubar
show the diff between a file on the current branch and potentially another branch
git diff βcached [<file>] shows diff for staged (git-addβed) files (which includes uncommitted git cherry-pickβed files)
git ls-files
list all files in the index and under version control.
git ls-remote <remote> [HEAD]
show the current version on the remote repo. This can be used to check whether
a local is required by comparing the local head revision.
Adding / Deleting
ββββββ
git add <file1> <file2> β¦
add <file1>, <file2>, etc⦠to the project
git add <dir>
add all files under directory <dir> to the project, including subdirectories
git add .
add all files under the current directory to the project
*WARNING*: including untracked files.
git rm <file1> <file2> β¦
remove <file1>, <file2>, etc⦠from the project
git rm $(git ls-files βdeleted)
remove all deleted files from the project
git rm βcached <file1> <file2> β¦
commits absence of <file1>, <file2>, etc⦠from the project
Ignoring
βββ
Option 1:
Edit $GIT_DIR/.git/info/exclude. See Environment Variables below for explanation on $GIT_DIR.
Option 2:
Add a file .gitignore to the root of your project. This file will be checked in.
Either way you need to add patterns to exclude to these files.
Staging
ββ-
git add <file1> <file2> β¦
git stage <file1> <file2> β¦
add changes in <file1>, <file2> β¦ to the staging area (to be included in
the next commit
git add -p
git stage βpatch
interactively walk through the current changes (hunks) in the working
tree, and decide which changes to add to the staging area.
git add -i
git stage βinteractive
interactively add files/changes to the staging area. For a simpler
mode (no menu), try `git add βpatch` (above)
Unstaging
βββ
git reset HEAD <file1> <file2> β¦
remove the specified files from the next commit
Committing
βββ-
git commit <file1> <file2> β¦ [-m <msg>]
commit <file1>, <file2>, etcβ¦, optionally using commit message <msg>,
otherwise opening your editor to let you type a commit message
git commit -a
commit all files changed since your last commit
(does not include new (untracked) files)
git commit -v
commit verbosely, i. e. includes the diff of the contents being committed in
the commit message screen
git commit βamend
edit the commit message of the most recent commit
git commit βamend <file1> <file2> β¦
redo previous commit, including changes made to <file1>, <file2>, etcβ¦
Branching
βββ
git branch
list all local branches
git branch -r
list all remote branches
git branch -a
list all local and remote branches
git branch <branch>
create a new branch named <branch>, referencing the same point in history as
the current branch
git branch <branch> <start-point>
create a new branch named <branch>, referencing <start-point>, which may be
specified any way you like, including using a branch name or a tag name
git push <repo> <start-point>:refs/heads/<branch>
create a new remote branch named <branch>, referencing <start-point> on the
remote. Repo is the name of the remote.
Example: git push origin origin:refs/heads/branch-1
Example: git push origin origin/branch-1:refs/heads/branch-2
Example: git push origin branch-1 ## shortcut
git branch βtrack <branch> <remote-branch>
create a tracking branch. Will push/pull changes to/from another repository.
Example: git branch βtrack experimental origin/experimental
git branch βset-upstream <branch> <remote-branch> (As of Git 1.7.0)
Make an existing branch track a remote branch
Example: git branch βset-upstream foo origin/foo
git branch -d <branch>
delete the branch <branch>; if the branch you are deleting points to a
commit which is not reachable from the current branch, this command
will fail with a warning.
git branch -r -d <remote-branch>
delete a remote-tracking branch.
Example: git branch -r -d wycats/master
git branch -D <branch>
even if the branch points to a commit not reachable from the current branch,
you may know that that commit is still reachable from some other branch or
tag. In that case it is safe to use this command to force git to delete the
branch.
git checkout <branch>
make the current branch <branch>, updating the working directory to reflect
the version referenced by <branch>
git checkout -b <new> <start-point>
create a new branch <new> referencing <start-point>, and check it out.
git push <repository> :<branch>
removes a branch from a remote repository.
Example: git push origin :old_branch_to_be_deleted
git co <branch> <path to new file>
Checkout a file from another branch and add it to this branch. File
will still need to be added to the git branch, but itβs present.
Eg. git co remote_at_origin__tick702_antifraud_blocking β¦./β¦nt_elements_for_iframe_blocked_page.rb
git show <branch> β <path to file that does not exist>
Eg. git show remote_tick702 β path/to/fubar.txt
show the contents of a file that was created on another branch and that
does not exist on the current branch.
git show <rev>:<repo path to file>
Show the contents of a file at the specific revision. Note: path has to be
absolute within the repo.
Merging
ββ-
git merge <branch>
merge branch <branch> into the current branch; this command is idempotent
and can be run as many times as needed to keep the current branch
up-to-date with changes in <branch>
git merge <branch> βno-commit
merge branch <branch> into the current branch, but do not autocommit the
result; allows you to make further tweaks
git merge <branch> -s ours
merge branch <branch> into the current branch, but drops any changes in
<branch>, using the current tree as the new tree
Cherry-Picking
βββββ
git cherry-pick [βedit] [-n] [-m parent-number] [-s] [-x] <commit>
selectively merge a single commit from another local branch
Example: git cherry-pick 7300a6130d9447e18a931e898b64eefedea19544
git hash-object <file-path>
get the blob of some file whether it is in a repository or not
Find the commit in the repository that contains the file blob:
obj_blob=Β»$1β³
git log βpretty=format:β%T %h %sβ \
| while read tree commit subject ; do
if git ls-tree -r $tree | grep -q Β«$obj_blobΒ» ; then
echo $commit Β«$subjectΒ»
fi
done
Squashing
βββ
WARNING: Β«git rebaseΒ» changes history. Be careful. Google it.
git rebase βinteractive HEAD~10
(then change all but the first Β«pickΒ» to Β«squashΒ»)
squash the last 10 commits into one big commit
Conflicts
βββ
git mergetool
work through conflicted files by opening them in your mergetool (opendiff,
kdiff3, etc.) and choosing left/right chunks. The merged result is staged for
commit.
For binary files or if mergetool wonβt do, resolve the conflict(s) manually
and then do:
git add <file1> [<file2> β¦]
Once all conflicts are resolved and staged, commit the pending merge with:
git commit
Sharing
ββ-
git fetch <remote>
update the remote-tracking branches for <remote> (defaults to Β«originΒ»).
Does not initiate a merge into the current branch (see Β«git pullΒ» below).
git pull
fetch changes from the server, and merge them into the current branch.
Note: .git/config must have a [branch Β«some_nameΒ»] section for the current
branch, to know which remote-tracking branch to merge into the current
branch. Git 1.5.3 and above adds this automatically.
git push
update the server with your commits across all branches that are *COMMON*
between your local copy and the server. Local branches that were never
pushed to the server in the first place are not shared.
git push origin <branch>
update the server with your commits made to <branch> since your last push.
This is always *required* for new branches that you wish to share. After
the first explicit push, Β«git pushΒ» by itself is sufficient.
git push origin <branch>:refs/heads/<branch>
E.g. git push origin twitter-experiment:refs/heads/twitter-experiment
Which, in fact, is the same as git push origin <branch> but a little
more obvious what is happening.
Reverting
βββ
git revert <rev>
reverse commit specified by <rev> and commit the result. This does *not* do
the same thing as similarly named commands in other VCSβs such as Β«svn
revertΒ» or Β«bzr revertΒ», see below
git checkout <file>
re-checkout <file>, overwriting any local changes
git checkout .
forgot something in your last commit? Thatβs easy to fix. Undo your last
commit, but keep the changes in the staging area for editing.
git commit βamend
redo previous commit, including changes youβve staged in the meantime.
Also used to edit commit message of previous commit.
Plumbing
βββ
test <sha1-A> = $(git merge-base <sha1-A> <sha1-B>)
determine if merging sha1-B into sha1-A is achievable as a fast forward;
non-zero exit status is false.
Stashing
βββ
git stash
git stash save <optional-name>
save your local modifications to a new stash (so you can for example
Β«git svn rebaseΒ» or Β«git pullΒ»)
git stash apply
restore the changes recorded in the stash on top of the current working tree
state
git stash pop
restore the changes from the most recent stash, and remove it from the stack
of stashed changes
git stash list
list all current stashes
git stash show <stash-name> -p
show the contents of a stash β accepts all diff args
git stash drop [<stash-name>] delete the stash
git stash clear
delete all current stashes
Remotes
ββ-
git remote add <remote> <remote_URL>
adds a remote repository to your git config. Can be then fetched locally.
Example:
git remote add coreteam git://github.com/wycats/merb-plugins.git
git fetch coreteam
git push <remote> :refs/heads/<branch>
delete a branch in a remote repository
git push <remote> <remote>:refs/heads/<remote_branch>
create a branch on a remote repository
Example: git push origin origin:refs/heads/new_feature_name
git push <repository> +<remote>:<new_remote>
replace a <remote> branch with <new_remote>
think twice before do this
Example: git push origin +master:my_branch
git remote prune <remote>
prune deleted remote-tracking branches from Β«git branch -rΒ» listing
git remote add -t master -m master origin git://example.com/git.git/
add a remote and track its master
git remote show <remote>
show information about the remote server.
git checkout -b <local branch> <remote>/<remote branch>
Eg. :
git checkout -b myfeature origin/myfeature
git checkout -b myfeature remotes/<remote>/<branch>
Track a remote branch as a local branch. It seems that
somtimes an extra βremotes/β is required, to see the exact
branch name, βgit branch -aβ.
git pull <remote> <branch>
git push
For branches that are remotely tracked (via git push) but
that complain about non-fast forward commits when doing a
git push. The pull synchronizes local and remote, and if
all goes well, the result is pushable.
git fetch <remote>
Retrieves all branches from the remote repository. After
this βgit branch βtrack β¦β can be used to track a branch
from the new remote.
Submodules
βββ-
git submodule add <remote_repository> <path/to/submodule>
add the given repository at the given path. The addition will be part of the
next commit.
git submodule update [βinit]
Update the registered submodules (clone missing submodules, and checkout
the commit specified by the super-repo). ..d8efce43099
Revision does not need to be fully specified.
git am <patch file>
Applies the patch file generated by format-patch.
git diff βno-prefix > patchfile
Generates a patch file that can be applied using patch:
patch -p0 < patchfile
Useful for sharing changes without generating a git commit.
Tags
β-
git tag -l
Will list all tags defined in the repository.
git co <tag_name>
Will checkout the code for a particular tag. After this youβll
probably want to do: βgit co -b <some branch name>β to define
a branch. Any changes you now make can be committed to that
branch and later merged.
Archive
ββ-
git archive master | tar -x -C /somewhere/else
Will export expanded tree as tar archive at given path
git archive master | bzip2 > source-tree.tar.bz2
Will export archive as bz2
git archive βformat zip βoutput /full/path master
Will export as zip
Git Instaweb
ββββ
git instaweb βhttpd=webrick [βstart | βstop | βrestart]
Environment Variables
βββββββ
GIT_AUTHOR_NAME, GIT_COMMITTER_NAME
Your full name to be recorded in any newly created commits. Overrides
user.name in .git/config
GIT_AUTHOR_EMAIL, GIT_COMMITTER_EMAIL
Your email address to be recorded in any newly created commits. Overrides
user.email in .git/config
GIT_DIR
Location of the repository to use (for out of working directory repositories)
GIT_WORKING_TREE
Location of the Working Directory β use with GIT_DIR to specifiy the working directory root
or to work without being in the working directory at all.
Changing history
βββββ-
Change author for all commits with given name
git filter-branch βcommit-filter β
if [ Β«$GIT_COMMITTER_NAMEΒ» = Β«<Old Name>Β» ];
then
GIT_COMMITTER_NAME=Β»<New Name>Β»;
GIT_AUTHOR_NAME=Β»<New Name>Β»;
GIT_COMMITTER_EMAIL=Β»<New Email>Β»;
GIT_AUTHOR_EMAIL=Β»<New Email>Β»;
git commit-tree Β«[emailΒ protected]Β»;
else
git commit-tree Β«[emailΒ protected]Β»;
fiβ HEAD
DVCS Git ΠΈ TortoiseGit Π² ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°Ρ . ΠΠΎΡΠΎΠ±ΠΈΠ΅ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ².

Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ git? git β ΡΡΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ.
ΠΠ΅ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ ΠΏΡΠΎΠ΅ΠΊΡ Β«Google API Π² DelphiΒ» ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΅Ρ
Π°Π» Π½Π° Π½ΠΎΠ²ΡΠΉ Π°Π΄ΡΠ΅Ρ ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Git. ΠΠ»Ρ ΡΠ΅Π³ΠΎ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ ΠΌΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ β ΡΡΠΎ Π²ΠΎΠΏΡΠΎΡ Π²ΡΠΎΡΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΡΠΉ, Π° Π²ΠΎΡ ΡΠ°Π±ΠΎΡΠ° Ρ Git, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅ Π΄Π»Ρ ΠΌΠ΅Π½Ρ, ΡΡΠ°Π»Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ. ΠΠΎ ΡΡΡΠΈ ΡΡΠΎΡ ΠΏΠΎΡΡ Π½ΠΈ ΡΡΠΎ ΠΈΠ½ΠΎΠ΅ ΠΊΠ°ΠΊ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° Π΄Π»Ρ ΡΠ΅Π±Ρ Π»ΡΠ±ΠΈΠΌΠΎΠ³ΠΎ ΠΏΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Git, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ° ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΊΠΎΠΌΡ-ΡΠΎ ΠΊΠ°ΠΊ ΠΈ ΠΌΠ½Π΅ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΎΠΉ DVCS.
ΠΡΠ»ΠΈ ΠΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² Delphi, ΡΠΎ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Git Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· IDE Delphi
ΠΠ΅Π±ΠΎΠ»ΡΡΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅. Π ΡΠ΅ΠΌ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΏΠΎΠΉΠ΄Π΅Ρ ΡΠ΅ΡΡ
Git β ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠΎΠ΅ΠΊΡ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΡΠ΄ΡΠ° Linux.
Π’ΠΎ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²ΠΎ, ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΎΠ·Π΄Π°Π²Π°Π»Π°ΡΡ Β«ΠΏΠΎΠ΄ LinuxΒ» ΡΠΆΠ΅ ΠΊΠ°ΠΊ Π±Ρ Π½Π°ΠΌΠ΅ΠΊΠ°Π΅Ρ Π½Π° ΡΠΎ, ΡΡΠΎ Π±Π΅Π· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π½Π°ΠΌ Π½Π΅ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ.
ΠΠΎ Π½Π΅ ΡΡΠΎΠΈΡ ΠΌΠ°Ρ Π°ΡΡ ΡΡΠΊΠ°ΠΌΠΈ ΠΈ ΠΊΡΠΈΡΠ°ΡΡ Β«ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΎΡΡΡΠΎΠΉ, git β Π² ΠΏΠ΅ΡΡΒ» ΠΈ Π²ΡΠ΅ ΡΠ°ΠΊΠΎΠ΅. ΠΠΎΠ²Π΅ΡΡΡΠ΅ β ΠΊΠΎΠ½ΡΠΎΠ»Ρ Linux ΠΈ ΠΊΠΎΠ½ΡΠΎΠ»Ρ Windows ΠΈΠΌΠ΅ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΎΠ±ΡΠ΅Π΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ β ΡΡΡΠ½ΡΠΉ ΡΠΊΡΠ°Π½ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅. ΠΠΎΠΌΠ°Π½Π΄Ρ Linux (ΠΠΠ₯Π) ΠΏΡΠΎΡΡΡ ΠΈ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΡΡ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ Π½Π΅ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΡΠΎΠ±ΠΎΠ³ΠΎ ΡΡΡΠ΄Π° Π΄Π°ΠΆΠ΅ Π΄Π»Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°ΠΉΠ½ΠΈΠΊΠ°, ΠΊΠ°ΠΊ Ρ.
Π‘Π°ΠΌΡΠΌ Π³Π»Π°Π²Π½ΡΠΌ, Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄, ΠΎΡΠ»ΠΈΡΠΈΠ΅ΠΌ Git ΠΎΡ ΡΠΎΠ³ΠΎ ΠΆΠ΅ SVN ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π² Git Π½Π΅Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ½ΡΡΠΈΡ ΠΊΠ°ΠΊ Π³Π»Π°Π²Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ²ΠΎΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ,Β Π² ΠΊΠΎΡΠΎΡΡΡ Π΄Π΅Π»Π°Π΅Ρ commitβΡ ΠΈ, ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ, ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ, ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΠΈΠΌΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅.
ΠΡΠΎ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²ΠΎ ΠΈ ΠΏΠΎΡΡΠ°Π²ΠΈΠ»ΠΎ ΠΌΠ΅Π½Ρ Π² Π½Π°ΡΠ°Π»Π΅ ΡΠ°Π±ΠΎΡΡ Ρ Git Π² ΡΡΠΏΠΈΠΊ.
ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°ΠΊ commit ΠΈ Π½Π΅ Π² ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ?
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ?
ΠΠ°ΠΊ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π°ΡΠΈΠ½Π°ΡΡ ΡΠ°Π±ΠΎΡΡ?
ΠΡΠΈ ΠΈ Π΅ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎΡΠ΅ΡΠ°Π»ΠΈ ΠΌΠ΅Π½Ρ Π½Π° ΡΡΠ°ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ Git. Π‘Π΅ΠΉΡΠ°Ρ Ρ Π½Π΅ Π±ΡΠ΄Ρ ΡΠ³Π»ΡΠ±Π»ΡΡΡΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π² ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ Git, Π΄Π° ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π»ΡΠ±ΡΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΡ β Π²ΡΠ΅Π³ΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ»Π½ΠΎ Π² Π‘Π΅ΡΠΈ. Π Π·Π°ΡΡΠΎΠ½Ρ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ β ΠΊΠ°ΠΊ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Π²ΠΎΠΎΠ±ΡΠ΅, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΎΠΌ Π½Π΅ Π±ΡΠ»ΠΎ ΠΌΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΠ½ΠΎ Π·Π° Π±Π΅ΡΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΡΠ΅ΡΡΠ½Π½ΡΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΈ.
ΠΠ°ΡΠ°Π΅ΠΌ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΡΠΎΡΡ
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Git ΠΏΠΎΠ΄ Windows ΠΈΠΌΠ΅ΡΡΡΡ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΡΠ΅ ΠΈ ΡΠ·Π°Π±Π΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, msysgit. ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ ΠΡ ΡΠ°Π½Π΅Π΅ ΠΈΠΌΠ΅Π»ΠΈ ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Ρ SVN ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π² ΡΠ°Π±ΠΎΡΠ΅ TortoiseSVN, ΡΠΎ Π²ΠΈΠ΄ΠΈΠΌΠΎ, ΠΠ°ΠΌ Π·Π°Ρ
ΠΎΡΠ΅ΡΡΡ ΠΈΠΌΠ΅ΡΡ Π°Π½Π°Π»ΠΎΠ³ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈ Π΄Π»Ρ Git? ΠΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π²ΠΎΡ Π°Π½Π°Π»ΠΎΠ³ TortoiseSVN Π΄Π»Ρ Git β TortoiseGit.
ΠΠΎ ΡΡΡΠΈ TortoiseGitΒ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· MSysGit ΠΈ ΡΠΈΡΡΠ΅Ρ Π² ΠΎΠΊΠΎΡΠΊΠΎ Π΅Π΅ Π²ΡΠ²ΠΎΠ΄. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Ρ
Π²Π°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ
Git, ΡΠΎ TortoiseGit β ΡΠΎ, ΡΡΠΎ ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ.
ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ ΠΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΠΏΠΎΠ΄ 32-Ρ
Π±ΠΈΡΠ½ΠΎΠΉ Windows, ΡΠΎ ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΎΡΡ:
- msysgit β ΠΊΠ°ΡΠ°Π΅ΠΌ
Git-1.Git For Windows7.1-previewXXXXXXXX.exe (11,6 Mb)
- TortoiseGit. ΠΠ° ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΠ°ΡΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π±ΡΠ»Π° Π²Π΅ΡΡΠΈΡ TortoiseGit-1.5.2.0-32bit.msi (19.6 MB). ΠΠΎΠ²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅.
ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΡΠΊΠ°ΡΠ°ΡΡ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΡΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ 30 Mb.
Π’Π΅ΠΏΠ΅ΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΡΠΊΠ°ΡΠ°Π½Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ½Π°ΡΠ°Π»Π΅ ΡΡΠ°Π²ΠΈΠΌ msysgit, Π° ΠΏΠΎΡΠΎΠΌ TortoiseGit.
ΠΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ msysgit Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ.
ΠΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ TortoiseGit Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π² ΠΎΠΊΠ½Π΅ Β«Choose SSH ClientΒ» Π²ΡΠΎΡΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅:
ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΎΠ±ΠΎΠΈΡ
ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ² ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΡΠ°ΠΏΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΈΡΠ°ΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½Π½ΠΎΠΉ. ΠΡΠΈΡΡΡΠΏΠΈΠΌ ΠΊΠΎ Π²ΡΠΎΡΠΎΠΌΡ β ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git.
ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° Ρ Π±ΡΠ΄Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π½Π° github.com.
Π Π°ΡΠΏΠΈΡΠ΅ΠΌ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠ°Π³Π°ΠΌ.
1. Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π½Π° GitHubβe.
ΠΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π½Π΅ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π½ΠΈΡΠ΅ΠΌ ΠΎΡ Π²ΡΠ΅Ρ ΠΏΡΠΎΡΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΉ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΡΠ°ΠΉΡΠ°Ρ . ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΡΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ β Π°Π΄ΡΠ΅Ρ email ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΈ ΠΏΡΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ. ΠΡΠΎΡ Π°Π΄ΡΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅ΡΡ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ:
ΠΡΠΎΡΠΈΠ»Ρ Π½Π° GitHub.com
2. ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌ ΠΊΠ»ΡΡ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΏΠΎ SSH.
ΠΠΎΡ ΡΡΡ Ρ
ΠΎΡΠ΅ΡΡ-Π½Π΅ Ρ
ΠΎΡΠ΅ΡΡ, Π° Π½Π°Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ. ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ msysgit Ρ ΠΠ°Ρ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΡΠΎΠ»Π΅ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΠ»ΡΠΊ β Git Bush β Π²ΠΎΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π΅Π³ΠΎ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΊΠΎΠ½ΡΠΎΠ»Ρ.
- ΠΠ°Π±ΠΈΡΠ°Π΅ΠΌ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
ssh-keygen -t rsa -C Β«E-Mail ΠΈΠ· ΠΠ°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠΈΠ»ΡΒ»
- ΠΠ° ΡΠΊΡΠ°Π½Π΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π·Π°ΠΏΡΠΎΡ Β«Enter file in which to save the keyΒ». ΠΠΎΠΊΠ° ΠΎΡΡΠ°Π²ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠΌΠ΅ΠΌ Enter.
- ΠΠ°Ρ ΠΏΠΎΠΏΡΠΎΡΡΡ Π²Π²Π΅ΡΡΠΈ ΠΏΠ°ΡΠΎΠ»Ρ. ΠΡΡ ΡΠ°ΡΡΡ ΡΠΎΠΆΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΠΌ β Π²ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΏΠ°ΡΠΎΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ, Π° ΠΏΠΎΠΊΠ° β ΡΡΠΈΠΌΡΡ. ΠΠΌΠ΅ΠΌ ΠΎΠΏΡΡΡ Enter.
- Π‘Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ Π΄Π²Π° ΡΠ°ΠΉΠ»Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
β ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ°.
ΠΡΠ»ΠΈ ΠΡ Π²ΡΠ΅ Π΄Π΅Π»Π°Π»ΠΈ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΎ ΡΠ°ΠΉΠ»Ρ Π±ΡΠ΄ΡΡ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ:
C:/Documents and Settings/UserName/.ssh/
ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Β«ΠΠ»ΠΎΠΊΠ½ΠΎΡΠ°Β» ΡΠ°ΠΉΠ» ida_rsa.pub ΠΈ ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌ Π²ΡΠ΅ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² Π±ΡΡΠ΅Ρ ΠΎΠ±ΠΌΠ΅Π½Π°.
3. ΠΠ°Π½ΠΎΡΠΈΠΌ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄ΠΎΡΡΡΠΏΠ° Π² ΠΏΡΠΎΡΠΈΠ»Ρ.
ΠΠ»Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π² ΠΏΡΠΎΡΠΈΠ»Ρ:
- ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΡΠΈΠ»Ρ github ΠΈ ΠΆΠΌΠ΅ΠΌ ΡΡΡΠ»ΠΊΡ Account Settings (ΡΠ²Π΅ΡΡ Ρ)
- ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΏΡΠ½ΠΊΡ Β«SSH Public KeysΒ»
- ΠΠΌΠ΅ΠΌ ΡΡΡΠ»ΠΊΡ Β«Add another public keyΒ»
ΠΠ΅ΡΠ΅Π΄ Π²Π°ΠΌΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΎΡΠΌΠ° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°. ΠΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΈΠ· Π±ΡΡΠ΅ΡΠ΅ Π²Π΅ΡΡ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π½Π΅Π΅ ΡΠ΅ΠΊΡΡ (ΠΈΠ· ΡΠ°ΠΉΠ»Π° ida_rsa.pub) ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΠΎΠ»Π΅ key β ΠΏΠΎΠ»Π΅ Title ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΏΡΡΡΡΠΌ.
ΠΠ° ΡΡΠΎΠΌ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π°.
4. ΠΡΠΎΡΠΈΠΌΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° github ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ· Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΌΠ½Π΅ email Ρ Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ Π½Π° github. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Ρ Π±ΡΠ΄ΠΈΡΠ΅ Π·Π°ΠΏΠΈΡΠ°Π½Ρ Π² ΡΠΏΠΈΡΠΎΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π·Π΅ ΡΠ°Π±ΠΎΡΡ β ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΎΠ².
Π Π°Π±ΠΎΡΠ° ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΠΎΡΠΈΠ΅ΠΌ Git
ΠΠΎΡΡΡΠΏ ΠΏΠΎΠ»ΡΡΠ΅Π½, ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Π² ΠΠ°ΡΠ΅ΠΌ ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ TortoiseGit. ΠΠ»Ρ ΠΏΠΎΡΡΠ΄ΠΊΠ°, ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ· ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ΅ΠΉΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Ρ Π±ΡΠ΄Ρ ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ β Π»ΠΈΡΠ½ΠΈΠΌ Π·Π½Π°Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡΠ΄ΡΡ.
ΠΡΠ°ΠΊ, Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π½Π° ΠΆΠ΅ΡΡΠΊΠΎΠΌ Π΄ΠΈΡΠΊΠ΅ Π³Π΄Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Ρ ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ. ΠΠ°Π»Π΅Π΅ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
1. ΠΡΠ·ΡΠ²Π°Π΅ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΏΡΠ½ΠΊΡ Β«TortoiseGit β SettingsΒ«:
Π ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ ΡΡΠ°Π·Ρ ΠΊ ΠΏΡΠ½ΠΊΡΡ Β«Git β ConfigΒ» ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΡΠ²ΠΎΠ΅ ΠΈΠΌΡ ΠΈ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ. ΠΡΠΈ Π΄Π°Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π² ΡΠΎΡΠ½ΠΎΡΡΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΡΠ΅ΠΌΠΈ, ΡΡΠΎ Π·Π°ΠΏΠΈΡΠ°Π½Ρ Π² ΠΠ°ΡΠ΅ΠΌ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ΅ Π½Π° github, ΠΈΠ½Π°ΡΠ΅ Π²Π°Ρ ΠΊΠ»ΡΡ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ.
2. ΠΠ»ΠΎΠ½ΠΈΡΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π·Π°Ρ ΠΎΠ΄ΠΈΠΌ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈ ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌ Π² Π±ΡΡΠ΅Ρ Π°Π΄ΡΠ΅Ρ:
Π’Π΅ΠΏΠ΅ΡΡ ΠΆΠΌΠ΅ΠΌ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅ΠΌ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΈ Π² ΠΌΠ΅Π½Ρ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Β«Git Clone..Β«:
Π ΠΎΡΠΊΡΡΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π² ΠΏΠΎΠ»Π΅ URL Π²ΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π°Π΄ΡΠ΅Ρ ΠΈ ΠΆΠΌΠ΅ΠΌ Β«OkΒ»:
ΠΠ°ΡΠ½Π΅ΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
ΠΡΡ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π²ΡΠ΅Π³ΠΎ Π΄Π²ΡΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ:
cd path/to/dir
git clone URL
ΠΠΎΡΠ»Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ Π½Π° Π½Π°ΡΡ Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠΊΡ (master). Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½Π°Ρ Π·Π°Π½ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΎΠΉ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅, ΡΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ²ΠΎΡ Π²Π΅ΡΠ²Ρ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈ ΠΠ°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ²ΠΎΠΉ branch. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ.
3. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ²ΠΎΡ Π²Π΅ΡΠΊΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΆΠΌΠ΅ΠΌ ΠΏΡΠ°Π²ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΌΡΡΠΈ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π² ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π² ΠΌΠ΅Π½Ρ Β«TortoiseGit β Create BranchΒ«:
Π ΠΎΡΠΊΡΡΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ΅ Π·Π°Π΄Π°Π΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΡ. ΠΠΌΠ΅ΠΌ Β«ΠΠΊΒ», ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ Π½Π° ΡΠ²ΠΎΠΉ Π½ΠΎΠ²ΡΠΉ branch.
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ Π² ΠΌΠ΅Π½Ρ Β«TortoiseGit β Switch/Checkoutβ¦Β«:
Π ΠΎΡΠΊΡΡΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π½Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΠΆΠΌΠ΅ΠΌ Β«ΠΠΊΒ». Π£Π±Π΅ΠΆΠ΄Π°Π΅ΠΌΡΡ, ΡΡΠΎ ΠΌΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ»ΠΈΡΡ:
ΠΠΎ ΡΡΡΠΈ, Π²ΡΠ΅ ΡΡΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ branchβa Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΠ΅ΡΠΈΠ»ΠΎΡΡ Π±Ρ Π²ΡΠ΅Π³ΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
checkout -b new-branch
4. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌ. Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ β ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π² Delphi, Π²Π½ΠΎΡΠΈΠΌ ΡΠ²ΠΎΠΈ ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΠ²Ρ, ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ Ρ.Π΄. Π ΠΎΠ±ΡΠ΅ΠΌ Π²Π΅Π΄Π΅ΠΌ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΠ»ΠΎΠ΄ΠΎΡΠ²ΠΎΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ.
5. ΠΠ½ΠΎΡΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ΅Π½Ρ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡ
Π·Π°ΠΊΡΠ΅ΠΏΠΈΡΡ Π² Git. Π Π·Π΄Π΅ΡΡ ΠΎΠΏΡΡΡ ΠΆΠ΅ ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΎΡ ΡΠΎΠ³ΠΎ ΠΆΠ΅ SVN. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Commit Π² Git Π½Π΅ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ ΡΡΠ°Π·Ρ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° PUSH. Π ΠΎΠ±ΡΠ΅ΠΌ Π²ΠΈΠ΄Π΅ ΡΠ°Π±ΠΎΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
1. ΠΠ½ΠΎΡΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ
2. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π°ΠΊΡΠ΅ΠΏΠ»ΡΡΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Commit Π² ΠΌΠ΅Π½Ρ ΠΈΠ»ΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ:
git commit
3. ΠΠΎΠ³Π΄Π° ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ/ΡΠ΄ΠΎΠ±Π½ΠΎ/ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π·Π°ΠΊΡΠ΅ΠΏΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ push Π² ΡΠ²ΠΎΡ Π²Π΅ΡΠΊΡ (brunch). ΠΠΎΠΌΠ°Π½Π΄Π° ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
git push origin <ΡΠ²ΠΎΠ΅ ΠΈΠΌΡ Π±ΡΠ°Π½ΡΠ°>
ΠΠ΄Π΅ΡΡ ΡΡΠΎΠΈΡ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π° Π΄Π΅Π»Π΅. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΡΠ΅Π³ΠΎ Π»ΠΈΠ±ΠΎ. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ°ΠΉΠ», Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π² Π½Π΅Π³ΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠ°ΠΉΠ» Π² ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ», Π²ΡΠ·ΡΠ²Π°Π΅ΠΌ ΠΌΠ΅Π½Ρ ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Β«Addβ¦Β»:
ΠΠΎ ΡΠΈΡΡΠ½ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ Ρ Π²Π½ΠΎΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» text.txt. ΠΠΌΠ΅ΠΌ Β«OkΒ».
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π·Ρ ΠΆΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Commit β ΠΊΠ½ΠΎΠΏΠΊΠ° Commit ΠΏΠΎΡΠ²ΠΈΡΡΡ Π² ΠΎΠΊΠ½Π΅ Ρ Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ. ΠΠΌΠ΅ΠΌ Π΅Ρ ΠΈ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ Π΄Π»Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ Commitβa:
ΠΠ°ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΏΠΎΠ»Π΅ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ, ΠΆΠΌΠ΅ΠΌ Β«Πк» и ΠΊΠΎΠΌΠΌΠΈΡ Π³ΠΎΡΠΎΠ². ΠΡΠ»ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΡΠ°Π·Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΡΠΎ Π² ΠΎΠΊΠ½Π΅ Ρ Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠ° PUSH. ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΠ°Ρ Π½Π΅ ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΡΠ°ΡΠΊΠ°ΡΡ ΠΏΠΎ 1 ΡΠ°ΠΉΠ»ΠΈΠΊΡ ΡΡΠ΄Π°-ΡΡΠ΄Π° ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ»Ρ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½Ρ, ΡΡΠΎ ΠΈΡ
Π½Π΅Ρ ΡΠΌΡΡΠ»Π° ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ, ΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΠ΅ Π΄Π°Π»ΡΡΠ΅ ΠΊΠΎΠ΄ΠΈΡΡ, Π° push Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΠΏΠΎΠ·Π΄Π½Π΅Π΅.
Π§ΡΠΎΠ±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ push ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΡΡΠΏΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
1. ΠΠ°ΠΆΠΈΠΌΠ°Π΅ΠΌ Shift ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ. Π ΠΌΠ΅Π½Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Push. ΠΠ΅ΡΠ΅Π΄ ΠΠ°ΠΌΠΈ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ:
ΠΡΠ΅, ΡΡΠΎ ΠΎΡ ΠΠ°Ρ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ β Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ (Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅ ΠΎΠ½Π° Π²ΡΠ΄Π΅Π»Π΅Π½Π° ΠΊΡΠ°ΡΠ½ΡΠΌ) Π½Π°ΠΉΡΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ push ΠΈ Π΄Π²Π° ΡΠ°Π·Π° Π½Π°ΠΆΠ°ΡΡ Ok. ΠΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΠ΅ ΠΠ°ΠΌΠΈ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΎΡΠΏΡΠ°Π²ΡΡΡΡ Π² Π‘Π΅ΡΡ.
ΠΠΎΡ ΠΏΠΎΠΆΠ°Π»ΡΠΉ Π²ΡΠ΅, ΡΡΠΎ ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ° ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π½ΠΎΠ²ΠΎΠΉ Π΄Π»Ρ ΠΌΠ΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΠ°Π΄Π΅ΡΡΡ ΡΡΠ° ΠΌΠΈΠ½ΠΈ-ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΊΠΎΠΌΡ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΊΡΠΎΠΌΠ΅ ΠΌΠ΅Π½Ρ. Π Π΅ΡΠ»ΠΈ ΠΠ°Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π»Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ, ΡΠΎ ΠΊΠ°ΠΊ ΡΠ°Π· ΡΠ΅ΠΉΡΠ°Ρ Ρ ΠΈΠ·ΡΡΠ°Ρ ΠΠΎΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠΎΠΏΠΈΠΊΠΈ Π½Π° habrahabr.ru:
1. Git Workflow.
2. Git Wizardry
Π‘ΡΠ°ΡΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Ρ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ ΠΏΡΠΎΡΡΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ ΠΈ ΠΊΠ°ΡΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ°Π· ΡΠ°Π±ΠΎΡΡ Ρ Git Ρ Π½ΡΠ»Ρ.
ΠΠ½ΠΈΠΆΠ½Π°Ρ ΠΏΠΎΠ»ΠΊΠ°
ΠΠ²ΡΠΎΡ:Β ΠΠ½Π΄ΡΠ΅ΠΉ Π¨ΠΊΡΡΠ»Ρ ΠΠ°Π·Π²Π°Π½ΠΈΠ΅:Β Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Delphi ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:Β Π Π°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΡΡΠ΅Π΄Π΅ Delphi 7 ΠΈ Delphi 2005 Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π‘Π£ΠΠ MS SQL Server 2000, InterBase ΠΈ Firebird. ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅ΠΎΡΠΈΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ·ΡΠΊΠ΅ SQL. ΠΡΠ²Π΅ΡΠ΅Π½Ρ Π²ΠΎΠΏΡΠΎΡΡ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π‘Π£ΠΠ. | ||
ΠΠ²ΡΠΎΡ:Β ΠΠ½ΡΠΎΠ½ ΠΡΠΈΠ³ΠΎΡΡΠ΅Π² ΠΠ°Π·Π²Π°Π½ΠΈΠ΅:Β Π ΡΠ΅ΠΌ Π½Π΅ ΠΏΠΈΡΡΡ Π² ΠΊΠ½ΠΈΠ³Π°Ρ ΠΏΠΎ Delphi ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:Β Π Π°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Delphi. |
0 0 Π³ΠΎΠ»ΠΎΡΠ°
Π Π΅ΠΉΡΠΈΠ½Π³ ΡΡΠ°ΡΡΠΈ
ΠΠ°ΠΌΡΡΠΊΠ° ΠΏΠΎ Git Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
Follow @Cloudways
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΡΠ°ΡΡΡΡ ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ Ρ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π» Π²Π°ΠΆΠ½ΡΠ΅ ΡΠ΅ΠΌΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Git Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ , ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠ°ΠΌΠΈ ΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ Π»ΡΡΡΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Git Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ. Π ΡΡΠΎΠΉ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ΅ ΠΏΠΎ Git Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ Git. ΠΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ Π½Π° ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. Π― Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΡΠ°Π·Π΄Π΅Π» ΠΎ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Git, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Git ΠΈ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°Ρ .
Git β ΡΡΠΎ ΠΎΠ³ΡΠΎΠΌΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Ρ Π½Π°Π±ΠΎΡΠΎΠΌ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡ Π²ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Git. ΠΠ°ΡΠ½Π΅ΠΌ ΡΠ½Π°ΡΠ°Π»Π° Ρ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Git:
Git Terminologies
# | ΠΠΎΠΌΠ°Π½Π΄Π° Git | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
1 | Π§ΠΈΡΡΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ | Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π±Π΅Π· ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°. |
2 | Π€ΠΈΠ»ΠΈΠ°Π» | Π€ΠΈΠ»ΠΈΠ°Π» β ΡΡΠΎ Π°ΠΊΡΠΈΠ²Π½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² Git. Π‘Π°ΠΌΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²Π΅ΡΡ ΡΡΠΊΡ Π²Π΅ΡΠΊΠΈ. |
3 | ΠΠΈΠ½ΠΎΠ²Π°Ρ | ΠΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°ΠΉΠ»Π΅. ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡ, Π°Π²ΡΠΎΡΠ° ΠΈ Π²ΡΠ΅ΠΌΡ. |
4 | ΠΠ°ΡΡΠ° | ΠΡΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π»ΡΠ±Π°Ρ Π΄Π°Π½Π½Π°Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΈ Π΄Π΅ΡΠ΅Π²Π° ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² Π²ΠΎΡΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. |
5 | ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ | ΠΡΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠΎΡΠΊΠ° Π² ΠΈΡΡΠΎΡΠΈΠΈ Git, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½Π°Π±ΠΎΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. |
6 | ΠΠΈΡΡ. | Diff β ΡΡΠΎ ΡΠ°Π·Π½ΠΈΡΠ° Π² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ
ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΠΈΠΊΡΠ°ΡΠΈΡΠΌΠΈ ΠΈΠ»ΠΈ ΡΠΎΡ
ΡΠ°Π½Π΅Π½Π½ΡΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ.![]() |
7 | Π‘ΡΠ΅ΠΌΠ½Π°Ρ Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° | Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π°Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠΎ Π²Π΅ΡΠΊΠΈ. |
8 | ΠΠΎΠ»ΡΡΠΈΡΡ | ΠΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Π΅ΡΠΊΠ΅ ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ /ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ . |
9 | ΠΠΈΠ»ΠΊΠ° | Π Π°Π·Π²Π΅ΡΠ²Π»ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅. |
10 | Π₯ΡΡ | Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ SHA1 Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ |
11 | ΠΠΎΠ»ΠΎΠ²ΠΊΠ° | ΠΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΡΠ»ΠΊΠ° Π½Π° ΡΠΈΠΊΡΠ°ΡΠΈΡ Π² ΠΊΠΎΠ½ΡΠ΅ Π²Π΅ΡΠΊΠΈ |
12 | ΠΠ½Π΄Π΅ΠΊΡ | ΠΠ°Π±ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ. |
13 | ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ | Π§ΡΠΎΠ±Ρ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ. |
14 | ΠΠ°ΡΡΠ΅Ρ | ΠΠ΅ΡΠ²Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² Git |
15 | ΠΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ | ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ |
16 | ΠΠ°ΠΏΡΠΎΡ Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ | ΠΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ |
17 | Π’ΠΎΠ»ΡΠΎΠΊ | ΠΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΈΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ |
18 | Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ | ΠΠ°Π±ΠΎΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π²Π΅ΡΠΎΠΊ ΠΈ ΡΠ΅Π³ΠΎΠ² Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².![]() |
19 | Π Π°Π±ΠΎΡΠ΅Π΅ Π΄Π΅ΡΠ΅Π²ΠΎ | ΠΠ΅ΡΠ΅Π²ΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² |
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Git
# | ΠΠΎΠΌΠ°Π½Π΄Π° Git | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
1 | git config β Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ | Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ |
2 | git config β Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ user.email | Π£ΠΊΠ°ΠΆΠΈΡΠ΅ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. |
3 | git config β Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ. | Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠ»ΡΠΊ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Git. |
4 | git config β system core.editor | Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. |
5 | git config β Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ β ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ | ΠΡΠΊΡΠΎΠΉΡΠ΅ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ Π΄Π»Ρ ΡΡΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.![]() |
6 | git config βglobal color.ui Π°Π²ΡΠΎ | ΠΠΊΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΡΠ°ΡΠΊΡΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π²ΡΡ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. |
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git
# | ΠΠΎΠΌΠ°Π½Π΄Π° Git | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
1 | Π³ΠΈΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ | ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅. |
2 | ΠΊΠ»ΠΎΠ½ git (URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ) | ΠΠ»ΠΎΠ½ΠΈΡΡΠΉΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ GitHub Π² ΠΏΠ°ΠΏΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. |
3 | git clone (URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ) (ΠΏΠ°ΠΏΠΊΠ°) | ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΠ°ΠΏΠΊΡ. |
4 | git ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° https://github.com/username/(repo_name).git | Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΡΠ΅ΠΏΠΎ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠ΅Π΅ Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GitHub. |
5 | Π³ΠΈΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠΌΠ΅Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².![]() |
6 | git ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ -v | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠΌΡ ΠΈ URL ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π². |
7 | git remote rm (ΠΈΠΌΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎ) | Π£Π΄Π°Π»ΡΠ΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. |
8 | git ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ URL-Π°Π΄ΡΠ΅ΡΠΎΠ² (URL-Π°Π΄ΡΠ΅Ρ git) | ΠΠ·ΠΌΠ΅Π½ΡΠ΅Ρ URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. |
9 | git Π²ΡΠ±ΠΎΡΠΊΠ° | ΠΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°, Π½ΠΎ Π½Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ. |
10 | git ΡΡΠ½ΡΡΡ | ΠΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ . |
# | ΠΠΎΠΌΠ°Π½Π΄Π° Git | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
1 | git Π΄ΠΎΠ±Π°Π²ΠΈΡΡ (ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°) | ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ΅ΠΊΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ» Π΄Π»Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ. |
2 | git Π΄ΠΎΠ±Π°Π²ΠΈΡΡ . | ΠΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π² staging (Π±Π΅Π· ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²).![]() |
3 | git Π΄ΠΎΠ±Π°Π²ΠΈΡΡ -A | ΠΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ Π½ΠΎΠ²ΡΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ. |
4 | git rm (ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°) | Π£Π΄Π°Π»ΡΠ΅Ρ ΡΠ°ΠΉΠ» ΠΈ ΠΎΡΠΌΠ΅Π½ΡΠ΅Ρ Π΅Π³ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ (ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ). |
5 | git rm β ΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ (ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°) | ΠΡΠΌΠ΅Π½ΡΠ΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ°ΠΉΠ»Π°. |
6 | git mv Β (ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°) (ΠΈΠΌΡ_Π½ΠΎΠ²ΠΎΠ³ΠΎ_ΡΠ°ΠΉΠ»Π°) | ΠΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°Π΅Ρ Π΅Π³ΠΎ ΠΊ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. |
7 | git checkout <ΠΈΠΌΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°> | ΠΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°Π΅Ρ Π΅Π³ΠΎ ΠΊ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ |
8 | ΡΡΠ°ΡΡΡ git | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ². |
9 | git ls-files βΠ΄ΡΡΠ³ΠΎΠ΅ βΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ βexclude-standard | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ². |
10 | git ΡΠ°Π·Π½ΠΈΡΠ° | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π΅ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΠΈ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.![]() |
11 | git diff β ΠΏΠΎΡΡΠ°ΠΏΠ½ΠΎ | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΡΠ°ΠΉΠ»Π°. |
12 | git diff (ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°) | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠ΅ΠΉ. |
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ
# | ΠΠΎΠΌΠ°Π½Π΄Π° Git | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
1 | git commit -m Β«(ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅)Β» | Π€ΠΈΠΊΡΠΈΡΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. |
2 | git commit -am Β«(ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅)Β» | ΠΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² staging ΠΈ ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. |
3 | git-ΠΊΠ°ΡΡΠ° | ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ Commit. |
4 | Π³ΠΈΡ-ΡΠΎΡ | ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. |
5 | git reset β ΠΆΠ΅ΡΡΠΊΠΈΠΉ | ΠΡΠΌΠ΅Π½ΠΈΡΡ Π²ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ Π΄Π°Π½Π½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.![]() |
6 | git reset β ΠΆΠ΅ΡΡΠΊΠ°Ρ Π³ΠΎΠ»ΠΎΠ²Π° | ΠΡΠΌΠ΅Π½ΡΠ΅Ρ Π²ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. |
7 | ΠΆΡΡΠ½Π°Π» git | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. |
8 | ΠΆΡΡΠ½Π°Π» git -p | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. |
9 | ΠΆΡΡΠ½Π°Π» git -oneline | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Ρ ΠΏΡΠΎΡΡΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ. |
10 | git log β ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ (ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°) | Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΡΡΠΎΡΠΈΠΈ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ°ΠΉΠ»Π°. |
11 | Π²ΠΈΠ½ΠΎΠ²Π°Ρ git (ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°) | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. |
12 | git ΡΠ°ΠΉΠ½ΠΈΠΊ | ΠΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ. |
13 | git stash pop | ΠΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ. |
14 | ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ² git | Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ
Π½Π°Π±ΠΎΡΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠ°ΠΉΠ½ΠΈΠΊΠ°.![]() |
15 | git stash ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ | ΠΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΡΠΏΡΡΡΠ°Π½Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. |
16 | git stash drop | Π£Π΄Π°Π»ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΠΏΡΡΡΠ°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ |
17 | git stash ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ (ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ°ΠΉΠ½ΠΈΠΊΠ°) | ΠΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ½ΠΈΠΊΠ° ΠΏΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ. |
18 | git stash drop (stash_id) | Π£Π΄Π°Π»ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ½ΠΈΠΊΠ° ΠΏΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ. |
19 | git push | ΠΡΠΏΡΠ°Π²ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Origin. |
16 | ΠΈΡΡΠΎΡΠ½ΠΈΠΊ git push (ΠΈΠΌΡ_Π²Π΅ΡΠΊΠΈ) | ΠΡΠΏΡΠ°Π²ΠΊΠ° Π²Π΅ΡΠΊΠΈ Π² Origin. |
17 | Git push -f ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ (ΠΈΠΌΡ_Π²Π΅ΡΠΊΠΈ) | ΠΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Origin. |
18 | git-ΡΠ΅Π³ (ΠΈΠΌΡ_ΡΠ΅Π³Π°) | ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ ΡΠ΅Π³ Π΄Π»Ρ Π²Π΅ΡΡΠΈΠΈ. |
19 | git push | ΠΡΠΏΡΠ°Π²ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Origin.![]() |
ΠΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ
# | ΠΠΎΠΌΠ°Π½Π΄Π° Git | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
1 | Π²Π΅ΡΠΊΠ° git | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ Π²Π΅ΡΠ²Π΅ΠΉ. |
2 | Π²Π΅ΡΠΊΠ° git | Π‘ΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ. |
3 | Π²Π΅ΡΠΊΠ° git -m | ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°Π΅Ρ Π²Π΅ΡΠ²Ρ. |
4 | Π²Π΅ΡΠΊΠ° git -a | Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΡΠΈΠ»ΠΈΠ°Π»ΠΎΠ², Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ . |
5 | git checkout -b | Π‘ΠΎΠ·Π΄Π°Π΅Ρ Π²Π΅ΡΠΊΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π½Π° Π½Π΅Π΅. |
6 | git-ΠΊΠ°ΡΡΠ° | ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²Π΅ΡΠΊΡ. |
7 | git checkout -b ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅/ | ΠΠΎΠ»ΡΡΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠ²Ρ ΠΈΠ· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³. |
8 | Π²Π΅ΡΠΊΠ° git -d | Π£Π΄Π°Π»ΠΈΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²Π΅ΡΠ²Ρ. |
9 | git ΡΠ»ΠΈΡΠ½ΠΈΠ΅ | ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠ²Ρ Ρ ΠΌΠ°ΡΡΠ΅ΡΠΎΠΌ (ΡΠ½Π°ΡΠ°Π»Π° ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΠΈΠ· ΠΌΠ°ΡΡΠ΅ΡΠ°) |
10 | git ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡ | ΠΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΡΠΎΡΠΌΡΠ»ΠΈΡΡΠ΅Ρ Π½Π° Π΄ΡΡΠ³ΠΈΡ
.![]() |
11 | git ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡ | ΠΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΡΠΉΡΠ΅ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ Π½Π° Π±Π°Π·Ρ. Base ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π²Π΅ΡΠΊΠΈ. |
12 | git fetch ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ | ΠΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. |
13 | Π³ΠΈΡ Π΄ΠΈΡ.. | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π²Π΅ΡΠ²ΡΠΌΠΈ. |
14 | git pull β ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡ | ΠΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅Ρ Π΅Π΅ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠΏΠΈΡ. |
15 | git push β Π²ΡΠ΅ | ΠΠ΅ΡΠ΅Π΄Π°ΡΡ Π²ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ Π²Π΅ΡΠΊΠΈ Π² ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. |
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ PDF, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ.
Π‘Π²ΡΠ·Π°Π½ΠΎ:Β ΠΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Git Ρ ΠΏΠΎΠΌΠΎΡΡΡ Cloudways API
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠΌΠ°Π½Π΄Ρ Git ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡ Π²Π΅ΡΡ ΡΠΏΠ΅ΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Git. ΠΠ°ΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ Π²Π΅ΡΡ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄ Git. ΠΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° Git ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ. ΠΡΠ»ΠΈ Π²Ρ ΡΡΠΈΡΠ°Π΅ΡΠ΅, ΡΡΠΎ Ρ ΠΏΡΠΎΠΏΡΡΡΠΈΠ» Π²Π°ΠΆΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ»ΠΈ Ρ
ΠΎΡΠ΅Π» Π±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ, ΠΎΡΡΠ°Π²ΡΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π½ΠΈΠΆΠ΅.
ΠΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ ΡΠ²ΠΎΠΈΠΌ ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π². ΠΠΠΠΠΠΠ’ΠΠ ΠΠ Π‘ΠΠΠ§ΠΠ‘
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ΠΉ
Shahroze Nawaz
Shahroze β ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° PHP Π² Cloudways β ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ PHP-Ρ ΠΎΡΡΠΈΠ½Π³Π°. ΠΠΎΠΌΠΈΠΌΠΎ ΡΠ°Π±ΠΎΡΡ, ΠΎΠ½ Π»ΡΠ±ΠΈΡ ΠΊΠΈΠ½ΠΎ ΠΈ ΠΏΡΡΠ΅ΡΠ΅ΡΡΠ²ΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΅ΠΌΡ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ [emailΒ protected]
. Π’Π²ΠΈΡΡΠ΅Ρ Π€ΠΎΡΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°
Γ
ΠΠΎΠ»ΡΡΠΈΡΡ Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ Π±ΡΠ»Π»Π΅ΡΠ΅Π½Ρ
ΠΠΎΠ»ΡΡΠ°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ²ΡΠΌΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°.

Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π»ΠΈΡΡ Π½Π° Π½Π°Ρ!
ΠΠΎΠ»Π½Π°Ρ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ΠΠΠ’
05 ΠΎΠΊΡΡΠ±ΡΡ 2022 Π³.
ΠΠΎΠΌΠ°Π½ΡΠ°Ρ Π.
5 ΠΌΠΈΠ½ΡΡ Π§ΡΠ΅Π½ΠΈΠ΅
ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΠΏΠΎΠ»Π½ΡΡ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΡ ΠΏΠΎ Git
ΠΡΠΆΠ½ΠΎ Π²ΡΡΡΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ GIT? ΠΡ ΠΏΠΎΠΏΠ°Π»ΠΈ Π² Π½ΡΠΆΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ. Π§ΠΈΡΠ°ΠΉΡΠ΅ Π΄Π°Π»ΡΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΡΠΊΡΡΡΡ Π΄Π»Ρ ΡΠ΅Π±Ρ Π½Π°ΡΡ ΡΠ΄ΠΎΠ±Π½ΡΡ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ°ΡΠ½Π΅ΠΌ!
ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° GIT
GIT β ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ Π² ΡΠ°ΠΉΠ»Ρ. ΠΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ GIT Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΡΠΎΠ΅ΠΊΡ GIT ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΡΠ΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ²: ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ , ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ git .
Π ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Π²Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΠ΅, ΡΠ΄Π°Π»ΡΠ΅ΡΠ΅ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ»Ρ. ΠΠ°ΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ (ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΡΡΡΡ) Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π·Π°ΡΠΈΠΊΡΠΈΡΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ½ΠΈΠΌΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ git.
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GIT, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ Linux, Windows, Mac ΠΈ Solaris. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΊΡΡΡΡΡ ΠΊΡΠΈΠ²ΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, Π½ΠΎ Π΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ² ΠΏΠΎ GIT, Π³ΠΎΡΠΎΠ²ΡΡ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ GIT
ΠΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ GIT, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ:
- git init ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GIT. Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Git ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅:
git init
- ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅, ΡΠΊΠ°Π·Π°Π² ΠΈΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
git init [ΠΈΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°]
- git clone ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠ»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅:
git clone username@host:/path/to/repository
- Π Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
git clone /path/ to/repository
- git add ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ Π±Π°Π·ΠΎΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Git ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅Ρ ΡΠ°ΠΉΠ» temp.txt:
git add
- git commit ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ½ΠΈΠΌΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡ Π΅Π³ΠΎ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ git.
git commit βm Β«Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π·Π΄Π΅ΡΡΒ»
Pro Tip
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π»ΡΠ±ΡΠ΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄ΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
- git config ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ, ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΠΎΡΠΌΠ°Ρ ΡΠ°ΠΉΠ»Π° ΠΈ Ρ. Π΄. ΠΠ»Ρ ΠΈΠ»Π»ΡΡΡΡΠ°ΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
git config --global user.email [email protected]
- Π€Π»Π°Π³ βglobal ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ GIT, ΡΡΠΎ Π²Ρ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π². ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ° ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΠΈΠΆΠ΅:
git config --local user.email [email protected]
- git status ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΠ΅ Π½Π΅ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Ρ ΠΈ Π½Π΅ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Ρ.
git status
- git push ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠΎΡ Π±Π°Π·ΠΎΠ²Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΊΠΎΠ΄Π°:
git push origin
Pro Tip
ΠΠ°ΠΌΠ΅Π½ΠΈΡΠ΅ Π½Π° Π²Π΅ΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ.
- git checkout ΡΠΎΠ·Π΄Π°Π΅Ρ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π²Π°ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ Π±Π°Π·ΠΎΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅Ρ Π²Π°Ρ Π½Π° Π½Π΅Π΅:
ΠΊΠΎΠΌΠ°Π½Π΄Π° git checkout -b <Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ>
- Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π½Π° Π΄ΡΡΠ³ΡΡ, ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅:
git checkout <Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ>
- git remote ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π²ΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ .
Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΈΡ URL-Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ:
git remote βv
- Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΊ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git remote add origin
- ΠΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΌ, ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΄Π°Π»ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ:
git remote rm <ΠΈΠΌΡ-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ>
- git branch ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡ, ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡ Π²Π΅ΡΠΊΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ Π²Π΅ΡΠΎΠΊ, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
git branch
- ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅:
git branch βd
- git pull ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡΠΈΠ΅ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ°Π±ΠΎΡΠΈΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ.
git pull
- git merge ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ Π²Π΅ΡΠΊΠΈ Ρ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ.
git merge
- git diff ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ. Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ Ρ Π±Π°Π·ΠΎΠ²ΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
git diff --base
- Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ Π±Π°Π·ΠΎΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠ²ΡΠΌΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΈΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ΠΌ:
git diff <ΠΈΡΡ ΠΎΠ΄Π½Π°Ρ-Π²Π΅ΡΠ²Ρ> <ΡΠ΅Π»Π΅Π²Π°Ρ-Π²Π΅ΡΠ²Ρ>
- Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π²ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅:
git diff
- git tag ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΅Π³ΠΎ Π΄Π»Ρ ΠΎΡΠΌΠ΅ΡΠΊΠΈ ΡΠ°ΠΊΠΈΡ ΡΠΎΡΠ΅ΠΊ Π²ΡΠΏΡΡΠΊΠ°, ΠΊΠ°ΠΊ v1.0 ΠΈ v2.0.
git tag
- git log ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΡΡΠΎΡΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΏΡΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π΄Π΅ΡΠ°Π»Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π°ΡΡ Π²Π°ΠΌ Π²ΡΠ²ΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΡΠΎΠ²Π΅ΡΡΠΈΡΡ 15f4b6c44b3c8344caasdac9e4be13246e21sadw ΠΠ²ΡΠΎΡ: ΠΠ»Π΅ΠΊΡ Π₯Π°Π½ΡΠ΅Ρcom> ΠΠ°ΡΠ°: Β ΠΠ½, 1 ΠΎΠΊΡΡΠ±ΡΡ, 12:56:29 2016 -0600
- ΠΠΎΠΌΠ°Π½Π΄Π° git reset ΡΠ±ΡΠΎΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π΄ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ git.
git reset --hard HEAD
- git rm ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°.
git rm filename.txt
- git stash 9ΠΠΎΠΌΠ°Π½Π΄Π° 0341 Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΡΡΠΎΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΏΠΎΠ·ΠΆΠ΅.
git stash
- git show Β β ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π»ΡΠ±ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ git.
git show
- git fetch ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
git fetch ΠΈΡΡΠΎΡΠ½ΠΈΠΊ
- git ls-tree ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π΅ΡΠ΅Π²Π° Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΡΠ΅ΠΆΠΈΠΌΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ SHA-1 Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ Π΄Π²ΠΎΠΈΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ HEAD, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅:
git ls-tree HEAD
- git cat-file ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΈΠΏΠ΅ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ -p Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ SHA-1 ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
git cat-file βp d670460b4b4aece5915caf5c68d12f560a9fe3e4
- git grep ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΠΈΡΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ°Π· ΠΈ ΡΠ»ΠΎΠ² Π² Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π΅ΡΠ΅Π²ΡΡΡ , ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΈ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ. ΠΠ»Ρ ΠΏΠΎΠΈΡΠΊΠ° www.hostinger.com Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅:
git grep "www.hostinger.com"
- gitk ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅:
gitk
- git instaweb ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ git-web. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
git instaweb βhttpd=webrick
- git gc ΠΎΡΠΈΡΡΠΈΡ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
git gc
- git archive ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ zip- ΠΈΠ»ΠΈ tar-ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄Π΅ΡΠ΅Π²Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
git archive --format=tar master
- git prune ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ Π²Ρ ΠΎΠ΄ΡΡΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ.
git prune
- git fsck Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ git ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ Π»ΡΠ±ΡΠ΅ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
git fsck
- git rebase ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² Π΄ΡΡΠ³ΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
git rebase master
ΠΠ°ΠΌΡΡΠΊΠ° ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ GIT Π² ΡΠΎΡΠΌΠ°ΡΠ΅ .pdf
ΠΡΠ»ΠΈ Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ GIT, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΡΠ΄Π½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ Π΄Π°ΠΆΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΌΡ ΡΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΡ GIT, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ ΠΎΡΠ²ΠΎΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅. Π‘ΠΎΡ
ΡΠ°Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ» Π½Π° ΡΠ²ΠΎΠΈΡ
ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
ΠΈΠ»ΠΈ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΠΉΡΠ΅ Π΅Π³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ» Ρ Π²Π°Ρ ΠΏΠΎΠ΄ ΡΡΠΊΠΎΠΉ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΡΡΡΡΠ»ΠΈ, Π²ΡΠΏΠΎΠΌΠΈΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ GIT.
Π‘ΠΊΠ°ΡΠ°ΡΡ (ΡΠ°Π·ΠΌΠ΅Ρ: 1,2 ΠΠ)
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ·ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ GIT Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π»Π΅Π³ΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ². Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈΡ Π²ΡΠ΅, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, Π½ΠΎ, Π½Π°Π΄Π΅ΡΡΡ, Π½Π°ΡΠ° ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° GIT Π±ΡΠ΄Π΅Ρ Π²Π°ΠΌ ΠΏΠΎΠ»Π΅Π·Π½Π°.
ΠΡΠ°ΠΊΡΠΈΠΊΠ° ΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π°ΡΠΈ Π½Π°Π²ΡΠΊΠΈ! Π£Π΄Π°ΡΠΈ!
Π§Π°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ GIT
ΠΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ GIT ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ?
Π₯ΠΎΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠΎΡΠ½ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ Git, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅:
β git config
β git clone
β git init
β git status
β git push
β git add
β git commit
β Π²Π΅ΡΠΊΠ° git
ΠΠ°ΠΊ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ GIT?
ΠΠ°ΡΠ½ΠΈΡΠ΅ Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ GitHub ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Git Π½Π° ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° Git ΠΈ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° Github. ΠΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΡΠ²ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΡΠ΄Π°Π»ΡΠΉΡΠ΅ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· Git, ΡΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈ Π½ΠΎΠ²ΡΠ΅ Π²Π΅ΡΠΊΠΈ.
ΠΠΎΠΌΠ°Π½ΡΠ°Ρ Π²ΠΎΠ·Π³Π»Π°Π²Π»ΡΠ΅Ρ Π³ΡΡΠΏΠΏΡ ΠΏΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ ΠΈ SEO, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΡΠ²Π΅ΠΆΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ ΠΈ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Ρ. ΠΠ±Π»Π°Π΄Π°Ρ ΠΎΠ±ΡΠΈΡΠ½ΡΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ Π² ΠΎΠ±Π»Π°ΡΡΠΈ SEO ΠΈ ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³Π°, ΠΎΠ½ ΡΡΡΠ΅ΠΌΠΈΡΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Hostinger Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ³ΠΎΠ»ΠΊΠ°Ρ ΠΌΠΈΡΠ°. Π ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΠΎΠΌΠ°Π½ΡΠ°Ρ Π»ΡΠ±ΠΈΡ ΠΎΡΡΠ°ΡΠΈΠ²Π°ΡΡ Π½Π°Π²ΡΠΊΠΈ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΠΏΡΡΠ΅ΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΡΠΊΠ·ΠΎΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΌΠ΅ΡΡΠ°ΠΌ.
ΠΡΠ΅ ΠΎΡ ΠΠΎΠΌΠ°Π½ΡΠ°ΡΠ° Π.
Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° Git Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ . ΠΠΈΡ | Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° | ΠΠΎΠ²ΠΈΡΠΎΠΊ |β¦ | ΠΎΡ Shanika Ediriweera
Git | Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° | ΠΠΎΠ²ΠΈΡΠΎΠΊ | ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ
Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²Π°ΠΆΠ½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ.
Π‘ΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ β ΡΡΠΎ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΡΠ»ΠΈ Π΄ΠΎΠΏΡΡΠ΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΡΡΡ ΠΈ ΡΡΠ°Π²Π½ΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π½Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π°, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ ΠΈ ΡΠ²Π΅ΡΡΠΈ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΡ Π½Π΅ΡΠ΄ΠΎΠ±ΡΡΠ²Π° Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ»Π΅Π½ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Git . Git β ΡΡΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠΈ Π²Π΅ΡΡΠΈΠΉ (ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅) ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΏΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ»Π½ΡΡ ΠΈΡΡΠΎΡΠΈΡ Π²ΡΠ΅Ρ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Git Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Ρ ΡΡΠ΅ΡΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠ°ΠΌΡΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΠΈ ΡΠ°ΠΌΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ.
Π₯Π²Π°ΡΠΈΡ Π²ΡΡΡΠΏΠ»Π΅Π½ΠΈΡ.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
ΠΠ»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎ ΠΊΠ°ΠΊ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΡ, ΠΏΠΎΠΊΠ° Π²Π°Ρ ΠΌΠΎΠ·Π³ Π½Π΅ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ!!! π
ΠΠ»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ Git. ΠΡΠΈ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠ²ΡΠ·Π°Π½Ρ Ρ Π²Π°ΡΠΈΠΌΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡΠΌΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π±Π΅Π· ΡΠ»Π°Π³Π° --global
, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ Git Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
$ git config --global user.name "JohnDoe"
$ git config --global user.email "[email protected]"
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. ΠΠ½ΡΡΡΠΈ ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
$ git initΠΠ‘ΠΠΠΠ ΠΠ ΠΠΠΠ Π―ΠΠ’Π Π‘Π’ΠΠ’Π£Π‘!!!
ΠΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ git. ΠΠ½ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΡΠ°ΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° git, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
$ git status
Π‘ΠΏΡΠ°Π²ΠΊΠ°. ΠΠΎΠ»ΡΡΠΈΡΡ ΡΠΏΡΠ°Π²ΠΊΡ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ git
$ git help <ΠΊΠΎΠΌΠ°Π½Π΄Π° git>ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
$ git clone
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ URL-Π°Π΄ΡΠ΅ΡΠ° Π΄Π»Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. (ΠΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠΎΡΠΊΠ°)
$ git remote -v // ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π²ΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
$ git remote add origin// Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅
$ git remote rename// ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ URL-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎ ΠΊΠ°ΠΊ Upstream. (ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ ΠΈΠΌΡ)
$ git remote add upstream https://github.com/ ORIGINAL_REPOSITORY .git
$ git remote show upstream //Π΄Π΅ΡΠ°Π»ΠΈ
Π‘ΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΡΠΊΠ° Ρ Π²ΠΎΡΡ ΠΎΠ΄ΡΡΠΈΠΌ ΠΏΠΎΡΠΎΠΊΠΎΠΌ. (ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ)
$ git fetch upstreamBranching
$ git checkout master
$ git merge upstream/master
$ git branch //ΡΠΏΠΈΡΠΎΠΊ Π²Π΅ΡΠΎΠΊ
$ git branch -a //ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΎΠΊ
$ git branch//ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ
$ git branch -d//ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ
$ git branch -D <Π²Π΅ΡΠΊΠ°> //ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ
$ git branch -m//ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ$ git checkout <Π²Π΅ΡΠΊΠ°> //ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ
$ git checkout -b//ΡΠΎΠ·Π΄Π°ΡΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π²Π΅ΡΠΊΡ
ΠΠ°ΡΡΡΠΎΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ
$ git branch -u origin/
Π£Π΄Π°Π»ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ
$ git push origin --delete remote-branch-name
ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Git
$ git Π΄ΠΎΠΏ.//ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠ°Π±ΠΎΡΡ
ΠΠΠ
$ git add$ git commit //ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ Π΄Π»Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΡΠΈΠΏΠ°
ΠΠΠ
$ git commit -m "ΠΠΠ¨Π Π‘ΠΠΠΠ©ΠΠΠΠ Π Π‘ΠΠΠΠ©ΠΠΠΠ"$ git pull // Π²ΡΡΡΠ³ΠΈΠ²Π°ΡΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ, ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ
ΠΠΠ
$ git pull origin//ΠΠΠ’ΠΠ¬ β master, dev, feature-x...$ git push //Π΅ΡΠ»ΠΈ ΡΠΆΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ Π²Π΅ΡΠΊΠ°
ΠΡΠΏΡΠ°Π²ΠΈΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ Π²Π΅ΡΠΊΠ°. (ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ)
$ git push -u origin
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ. ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ. ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
$ git commit --amend
$ git commit --amend -m Β«ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅Β»
ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.
$ git diff
$ git diff --staged //ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ (git add) ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ 2 ΡΠ°ΠΉΠ»ΠΎΠ², ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ 2 ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ 2 Π²Π΅ΡΠΎΠΊ, ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅ https://www. atlassian.com/git/tutorials/saving-changes/git-diff
ΠΡΡΠ½Π°Π» Git. ( ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²)
$ git log
$ git log -n//limit
$ git log --oneline // Condense
$ git log --stat // ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°
$ git log --author ="" //ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΎΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π°Π²ΡΠΎΡΠ°
$ git log//ΠΊΠΎΠΌΠΌΠΈΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ°ΠΉΠ»$ git log --graph --decorate --oneline
ΠΠ²ΡΠΎΡΡΡΠ²ΠΎ (ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ Π²ΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π΅ )
$ git Π²ΠΈΠ½ΠΎΠ²Π°Ρ <Π€ΠΠΠ>
$ git Π²ΠΈΠ½ΠΎΠ²Π°Ρ <Π€ΠΠΠ> --date short
Π£Π΄Π°Π»ΠΈΡΡ
$ git rm//ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΠΉΠ»
$ git rm '*.txt' //ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .txt
Π‘Π΄Π΅Π»Π°ΡΡ ΡΠ°ΠΉΠ» Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠΌ. Π£Π΄Π°Π»ΠΈΡΡ ΡΠ°ΠΉΠ» ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ° git. ΠΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»:
$ git rm β cached// ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΉΠ» Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠΌ
ΠΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ» .gitignore
.
Π‘ΠΈΠ»ΠΎΠ²Π°Ρ ΡΡΠ³Π°. (ΠΠΎΠ»ΡΡΠΈΡΡ Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ΄Π°Π»Π΅Π½ΠΊΠ΅)
$ git fetch --all
$ git reset --hard origin/
$ git ΠΎΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· -- .![]()
ΠΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π½Π°ΠΆΠ°ΡΠΈΠ΅. (ΠΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠ΅ΠΉ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²)
$ git push originΠΡΠΌΠ΅Π½ΠΈΡΡ--force
Π‘Π±ΡΠΎΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ. (Unstage)
$ git reset
Π£Π΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΡΠ°ΠΉΠ»Π°.
$ git checkout --
$ git reset HEAD
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ Π΄Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Π΄ HEAD, ΡΠ°ΠΉΠ»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½Π° ΡΡΠ΅Π½Ρ. 9 Π‘Π±ΡΠΎΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. ( ΠΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΠΎΡΠΌΠ΅Π½Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΡΠ»ΠΈΡΠ½ΠΈΡ ΡΠ»ΠΈΡΠ½ΠΈΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ) ΠΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π°ΡΡ ΡΠ°Π±ΠΎΡΡ Π² ΡΡΠ΅ΠΊ, ΠΏΠΎΠΊΠ° ΠΌΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°. Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΡΠ°ΠΉΠ½ΠΈΠΊΠ° ΠΡΠΈΡΡΠΈΡΡ ΡΠ°ΠΉΠ½ΠΈΠΊ ΠΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π²ΡΠΏΡΡΠΊΠΎΠ²/Π²Π΅ΡΡΠΈΠΉ. ΠΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· https://www.atlassian.com/git/tutorials/ inspecting-a-repository/git-tag Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π² Π½ΠΎΠ²ΡΠΉ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ. Π’Π°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ git. ΠΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΠΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ΄Π° ΡΠ°ΡΡΠΈΡΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Git. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ ΡΠ»ΠΈΡΠ½ΠΈΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Π΅Π΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡΠ»ΠΎ, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: ΠΠΎΠ³Π΄Π° ΡΠ°ΠΉΠ»Ρ ΡΠΆΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Ρ git, .gitignore Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡ
ΡΠ΄Π°Π»ΠΈΡΡ. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΠ΅ Π½ΠΎΠ²ΡΡ Π·Π°ΠΏΠΈΡΡ Π² .gitignore Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΆΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Ρ git. ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠ° ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Git! π ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΡΠΎΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΡΠΉΡΠ΅ Π½ΠΈΠΆΠ΅, Π΅ΡΠ»ΠΈ Ρ ΠΏΡΠΎΠΏΡΡΡΠΈΠ» ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Git. $ git reset --hard HEAD
Π‘ΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅
$ git stash //ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
$ git stash save "Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΈΠ»Ρ Π½Π° Π½Π°Ρ ΡΠ°ΠΉΡ" //ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ//Π²ΡΡΠ°ΡΠΈΡΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ $ git stash show //ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΡ
ΡΠΎΠ½
$ git stash show -p //ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ°Π·Π½ΠΈΡΡ ΡΠ°ΠΉΠ½ΠΈΠΊΠ°
$ git stash list$ git stash pop
ΠΠΠ
$ git stash pop stash@{0} //stash@{0} - Π½ΠΎΠΌΠ΅Ρ ΡΠ°ΠΉΠ½ΠΈΠΊΠ°$ git stash apply $ git stash branch
$ git stash drop stash@{1}
$ git stash clear //ΠΎΡΠΈΡΡΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ½ΠΈΠΊΠΈ ΠΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ°
$ git tag // ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅Π³ΠΎΠ²
$ git checkout
$ git tag -a v0.0.3 -m "Π²Π΅ΡΡΠΈΡ 0.0.3" //ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ΅Π³ v0.0.3
$ git push --tags $ git fetch
$ git rebase //Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΏΠΎΠ²Π΅ΡΡ
ΠΈΡΡ
ΠΎΠ΄Π½ΡΡ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π±Π΅Π· ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
$ git rebase -i //ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ ΡΠ΅ΡΡΠΈΡ $ git rebase --continue //ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
$ git rebase β ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ //ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ
$ git rebase -- abort //ΠΏΡΠ΅ΡΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ $ git checkout
$ git rebase master //ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ Π² "some_branch"
$ git checkout master
$ git merge ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. https://www.atlassian.com/git/tutorials/rewriting-history/git-rebase
$ git rebase --onto
.gitignore β ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ
$ git rm -r --cached . && git Π΄ΠΎΠ±Π°Π²ΠΈΡΡ . && git commit -m "fixing .gitignore"// ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠ΄Π½Ρ Π·Π° Π΄ΡΡΠ³ΠΎΠΉ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ/ΡΠ΅ΡΠΊΠΎΡΡΡΡ
$ git rm -r --cached .
$ git Π΄ΠΎΠ±Π°Π²ΠΈΡΡ .
$ git commit -m "fixing .gitignore"