Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ git: git — ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ Π·Π°Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π² Git
ΠΠ΅ΡΠ²ΠΈ ΠΈΠ³ΡΠ°ΡΡ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΡ ΡΠΎΠ»Ρ Π² ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ, ΠΈ Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ Π² Git. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π²Π΅ΡΠΊΠ° ΠΈ ΠΊΠ°ΠΊ Π΅Π΅ ΡΠΎΠ·Π΄Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ².
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Git Branch?
Π ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΡΠ΅ΡΠΌΠΈΠ½ Β« Π²Π΅ΡΠ²ΡΒ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ Π΄Π΅ΡΠ΅Π²ΡΡΠΌΠΈ Π² ΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ Π²Π΅ΡΠ²Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ ΠΈ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΡΠ²ΠΎΠ». Π€ΠΈΠ»ΠΈΠ°Π»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΡΠΎΠ±Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π½ΠΈΠΌΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎ, Π½Π΅ ΠΌΠ΅ΡΠ°Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅.
Π‘Π²ΡΠ·Π°Π½Π½ΡΠΉ: ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π΅ΡΠ²ΠΈ Git Π΄Π»Ρ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Git, Π²Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π±ΡΠ΄Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, Π·Π½Π°Π΅ΡΠ΅ Π»ΠΈ Π²Ρ ΠΎΠ± ΡΡΠΎΠΌ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΡΠΎ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ Π²Π°ΡΠ΅ΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ , ΡΠ΅ΠΊΡΡΠ΅ΠΉ , ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ ΠΈΠ»ΠΈ HEAD . Π Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΠΊΠ΅.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Git Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΌΠΎΡΠ½ΠΎΡΡΡ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΡ, Π½ΠΎ Π΅ΡΡΡ ΡΠ΅ΠΌΡ ΠΏΠΎΡΡΠΈΡΡΡΡ. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΊΠΎΠΏΠ°ΡΡΡΡ Π² man-ΡΡΡΠ°Π½ΠΈΡΠ°Ρ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git, ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch <branchname>, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ:
$ git branch dev
Branch 'dev' set up to track local branch 'master'.
ΠΡΠΎ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠ²ΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ»ΠΈΡΡ Π½Π° ΡΡ, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π²ΡΠ΅ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ, ΡΡΠΎ Π½ΠΎΠ²Π°Ρ Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π°, Ρ ΠΏΠΎΠΌΠΎΡΡΡ git branch Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²:
$ git branch
1 dev
2 * master
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅, ΠΊΠ°ΠΊΡΡ Π²Π΅ΡΠ²Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ Π΄ΡΡΠ³Π°Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π°Π³ -vv :
$ git branch -vv
1 dev d1a9e5b [master] commit comment
2 * master d1a9e5b commit comment
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Π΄ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
fatal: Not a valid object name: 'master'.
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Ρ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
fatal: A branch named 'dev' already exists.
ΠΠΎΠΌΠ°Π½Π΄Π° git branch ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π½Π° ΡΠΎΡ ΠΆΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ, Π½Π°Π΄ ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ ΡΠ΅ΠΉΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ Π²Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΏΠΈΡ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ. Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ git checkout :
git checkout dev
Π’Π΅ΡΠΌΠΈΠ½ Β« ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°Β» ΠΌΠΎΠΆΠ΅Ρ ΡΠ±ΠΈΠ²Π°ΡΡ Ρ ΡΠΎΠ»ΠΊΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ ΠΊ Π΄ΡΡΠ³ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ; Π² Git ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΎΠ±ΡΡΠ½ΠΎ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΏΠΎΡΠ»Π΅ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, Π΄Π»Ρ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π΅ΡΡΡ ΡΡΠ»ΡΠΊ:
git checkout -b dev
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Β«ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌΒ« dev Β»ΠΈ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π½Π΅Π΅Β». ΠΡΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ:
git branch dev
git checkout dev
Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, Π²Ρ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ git checkout Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΈΠ· Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· ΡΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ another , ΠΈΠ· Π²Π΅ΡΠΊΠΈ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ dev :
git checkout -b another dev
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ GitHub Desktop
ΠΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π΅ΡΠΎΠΊ Git Π² Windows ΠΈΠ»ΠΈ macOS β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GitHub Desktop , ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (GUI), ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ GitHub. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ² ΠΈ ΡΠ΅Ρ , ΠΊΠΎΠΌΡ ΡΠ½ΡΡΡΡ ΠΊΠΎΡΠΌΠ°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΡΠΎ-ΡΠΎ ΡΠ΅ΠΏΡΠ΅Ρ ΡΠ»ΠΎΠ²ΠΎ Vim.
GitHub Desktop Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²:
ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΡΡΠΎΠ±Ρ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Π΅ΡΠ²ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ:
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠ½Π΅ΡΠ΅ Π²Π²ΠΎΠ΄ΠΈΡΡ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ Π±Π΅Π· ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ, GitHub Desktop ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ β ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΡΡΠΎΠ³ΠΎ:
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΠ°ΡΡ, ΡΡΠ°Π·Ρ ΠΆΠ΅ Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡ New Branch . ΠΠ°ΠΊΠΎΠΉ Π±Ρ ΠΌΠ°ΡΡΡΡΡ Π²Ρ Π½ΠΈ Π²ΡΠ±ΡΠ°Π»ΠΈ, Ρ Π²Π°Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π²Π΅ΡΠΊΠΈ:
ΠΠ°ΡΠ° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° Π°ΠΊΡΠΈΠ²Π½Π°, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ. GitHub Desktop ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡ Π½Π° Π²Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π²Π΅ΡΠΊΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±Π°ΡΠ½ΠΈ
ΠΡΡΠ³ΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Ρ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ. Tower Π±Π΅ΡΠΏΠ»Π°ΡΠ΅Π½ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 30-Π΄Π½Π΅Π²Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° ΠΈ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² macOS ΠΈ Windows.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Β« Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡΒ» Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΌΠ΅Π½Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ :
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· Π»ΡΠ±ΠΎΠΉ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ, ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ Π²Π΅ΡΠΊΡ Π½Π° Π»Π΅Π²ΠΎΠΉ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Β« Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>Β» :
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ Π²Π΅ΡΠ²Ρ ΠΊΠ°ΠΊ Π²Π΅ΡΠ²Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π°ΡΠ°Π»ΡΠ½ΡΡ ΡΠΎΡΠΊΡ Π½Π° Π»ΡΠ±ΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π²Π΅ΡΠ²Ρ:
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ GitKraken
GitKraken β Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ½Π°ΡΠ°Π»Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΡΡΡΠ°ΡΠ°ΡΡΠΈΠΌ, Π½ΠΎ ΠΎΠ½ Ρ ΠΎΡΠΎΡΠΎ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ Git, Π²ΠΊΠ»ΡΡΠ°Ρ Π²Π΅ΡΠΊΠΈ. GitKraken Π±Π΅ΡΠΏΠ»Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ Windows, Mac ΠΈ Linux.
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ; ΡΡΠΎ ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ΄Π΅Π»Π΅Π½ Π² ΡΠΏΠΈΡΠΊΠ΅ Π²Π΅ΡΠΎΠΊ Π½Π° Π»Π΅Π²ΠΎΠΉ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ:
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ Π·Π½Π°ΡΠΎΠΊ Π²Π΅ΡΠΊΠΈ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²:
ΠΠ²Π΅Π΄ΠΈΡΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ENTER:
ΠΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Π±ΡΠ΄Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π°, ΠΈ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΠΊΡΠ°Π½Π°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π½Π° GitHub
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Π·Π°ΠΏΡΡΠΊΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΡΠ²ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π΄Π²ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ Git. ΠΠ΅ΡΠ²ΡΠΉ, GitHub , ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΡΡΠ΅Π΄ΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΠ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.
GitHub ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΡ (Π°ΠΊΡΠΈΠ²Π½ΡΡ) Π²Π΅ΡΠΊΡ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² Π»Π΅Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ:
ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ, ΡΡΠΎΠ±Ρ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΊΠΈ:
ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΈΠΌΡ Π²Π°ΡΠ΅ΠΉ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Π°ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π΅Π΅ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ:
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π°ΡΠ° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π½Π° Bitbucket
Bitbucket β Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠ΅ ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Ρ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ°ΡΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².
ΠΠ° Π»ΡΠ±ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΏΡΠ½ΠΊΡ ΠΠ΅ΡΠ²ΠΈ Π² ΠΌΠ΅Π½Ρ ΡΠ»Π΅Π²Π°:
ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Π² ΠΏΡΠ°Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ. ΠΠ²Π΅Π΄ΠΈΡΠ΅ Π½ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β« Π‘ΠΎΠ·Π΄Π°ΡΡΒ» . ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, ΠΊΡΠΎΠΌΠ΅ ΠΌΠ°ΡΡΠ΅ΡΠ° , ΡΠ½Π°ΡΠ°Π»Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ Π²Π΅ΡΠΊΡ From :
Bitbucket ΡΠΏΡΠΎΡΠ°Π΅Ρ Π²ΡΠ±ΠΎΡ ΡΠΈΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠ΅ΡΠΈΠΊΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΡΠΉ ΠΊ ΠΈΠΌΠ΅Π½ΠΈ Π²Π΅ΡΠΊΠΈ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΠΎΠ²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Ρ ΠΊ Π²Π΅ΡΠ²ΡΠΌ. ΠΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅, Π° Π½Π΅ Π²ΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Git, Π½ΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Bitbucket ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π²ΠΈΠ΄ Π²Π°ΡΠ΅ΠΉ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ:
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΡΠ°ΡΡΠΈΡΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Git
Git β ΡΡΠΎ Π²ΡΠ΅ ΠΎ Π²Π΅ΡΠ²ΡΡ : ΠΈΡ Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, ΠΎΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΠΎΡΠΎΠΊΠ°ΠΌ ΡΠ°Π±ΠΎΡΡ, Π³ΠΎΡΠΎΠ²ΡΠ΅ ΠΊ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΏΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ. ΠΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΠ΅ΡΡ Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ, ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ Π²Π΅ΡΠ²Π΅ΠΉ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅ΡΠ΅.
Π‘Π²ΡΠ·Π°Π½Π½ΡΠΉ
ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ Git ΠΈ GitHub: ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ | by Olga Sayfudinova | NOP::Nuances of Programming
ΠΡΠ΅Π΄ΡΠ΄ΡΡΠ°Ρ ΡΡΠ°ΡΡΡ: Π§Π°ΡΡΡ 1, Π§Π°ΡΡΡ 2
Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° β ΡΡΠΎ Π²ΠΈΠ·ΠΈΡΠ½Π°Ρ ΠΊΠ°ΡΡΠΎΡΠΊΠ° GitHub!
Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π° GitHub
ΠΠΎΠΏΡΡΡΠΈΠΌ, Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΊΡΡΠ΅ΠΉ ΡΠ°Π·Π½ΡΡ ΠΈΠ΄Π΅ΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. Π§ΡΠΎ-ΡΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²ΠΎ, Π° Π½Π°Π΄ ΡΠ΅ΠΌ-ΡΠΎ Π΅ΡΠ΅ ΡΡΠΎΠΈΡ ΠΏΠΎΡΡΡΠ΄ΠΈΡΡΡΡ. ΠΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ Π²Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ°Π΅ΡΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΡΠ΅ΠΌ-ΡΠΎ ΡΠ²ΠΎΠΈΠΌ. ΠΠ΄Π΅ΡΡ ΠΈ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅!
ΠΠ΅ΡΠΊΠ° β ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½ΠΎΠ²ΡΡ
ΠΈΠ΄Π΅ΠΉ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΠ΅ Π½Π΅ Π·Π°ΡΡΠΎΠ½ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ master
Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π²Ρ ΡΠ°ΠΌΠΈ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π·Π°Ρ
ΠΎΡΠΈΡΠ΅. Π’ΠΎ Π΅ΡΡΡ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎ ΡΠ»ΠΈΠ²Π°Π΅ΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ master
.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ Π²Π΅ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ, β ΡΡΠΎ master
. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Ρ
ΠΎΡΠΈΡΠ΅ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠ°Π·Ρ, ΡΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΠ΅ ΠΈΡ
ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ»ΠΈΠ²Π°ΠΉΡΠ΅ Ρ master
.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ Π²Π½Π΅ΡΡΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π»ΠΈΠ±ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΠΎ-ΡΠΎ, Π½Π΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Ρ master
, ΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ. Π‘Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π² Π»ΡΠ±ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
ΠΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π²Π΅ΡΠΊΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ new_feature
(Π½ΠΎΠ²Π°Ρ ΠΎΠΏΡΠΈΡ) ΠΈ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ Π² Π½Π΅Π΅ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅:
git checkout -b new_feature
ΠΠ½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠΎΠΊ Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΌΠΈ Π½Π°Π·Π²Π°Π½ΠΈΡΠΌΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ»ΠΎΡΡ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ. ΠΠ°ΠΆΠ΄ΡΠΉ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ½Π°Π±ΠΆΠ°ΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΌ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΌ ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ:
git checkout
ΠΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Β«Π·Π°Π³Π»ΡΠ½ΡΡΡΒ» Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π΅ ΠΎΡΠΊΡΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² Π²Π΅ΡΠΊΡ master
:
git checkout master
ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ new_feature
:
git checkout new_feature
ΠΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΠΈΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ master
, ΡΡΠΎΠ±Ρ ΠΈΡ
ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
git merge new_feature
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±Π΅ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΠ΅ new_feature
ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΈΡ
Π² Π²Π΅ΡΠΊΡ master
.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, new_feature
) Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Β«ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉΒ»:
git push β set-upstream origin new_feature
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Π²Π½Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π°Ρ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ, ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΡΠΈΠ½ΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Pull request). Π Pull request Π²Π°ΡΠΈ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ ΡΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΡΠ΄ΠΈΡΡ ΠΈΡ . Pull request ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΠΎ Π»ΡΠ±ΠΎΠΌΡ ΠΏΠΎΠ²ΠΎΠ΄Ρ, Π±ΡΠ΄Ρ ΡΠΎ Π²Π½Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠ±Π° ΠΎ ΠΏΠΎΠΌΠΎΡΠΈ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠΌΠΌΠΌΠΌβ¦ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΡ?
ΠΠ°, Π²ΡΠ΅ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Ρ ΡΠ°ΠΉΡΠ° GitHub.
Pull request ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠΎ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΡΠ°Π½Π΅Π΅ ΠΏΡΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ README-ΡΠ°ΠΉΠ»Π°. ΠΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠ½ΠΎ!
Π Π΅ΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΡΠ°ΠΉΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ Π²ΡΠΏΠ°Π΄Π°ΡΡΠ΅ΠΌΡ ΠΌΠ΅Π½Ρ Π² Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΠΊΡΠ°Π½Π°. Π’Π°ΠΌ Π΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Branch: master. ΠΠ°Π΄Π°ΠΉΡΠ΅ ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Create branch (Π»ΠΈΠ±ΠΎ Π½Π°ΠΆΠΌΠΈΡΠ΅ Enter
Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ΅). Π’Π΅ΠΏΠ΅ΡΡ Ρ Π²Π°Ρ Π΅ΡΡΡ Π΄Π²Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ Π²Π΅ΡΠΊΠΈ. ΠΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡ
Π΄ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ Ρ master
.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅, ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π°ΡΡΠΎΠ½ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΅Π΅.
ΠΡΠ»ΠΈ Π²Π°Ρ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Ρ ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ»ΠΈΡΡ ΠΈΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Pull request. ΠΡΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· Pull request ΠΈ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈΡ ΠΈΠ»ΠΈ ΡΠ»ΠΈΡΡ ΠΈΡ Ρ Π½ΡΠΆΠ½ΡΠΌΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ.
Pull request ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΡΡΡΡ ΡΡΠ°Π·Ρ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ Ρ ΡΠ°ΠΉΡΠ° GitHub. ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Π²Π½Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΡ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ»ΠΈΡΡ ΠΈΡ
Ρ master
. Π’ΠΎΠ³Π΄Π°:
- ΠΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Pull request Π²Π²Π΅ΡΡ Ρ ΡΠΊΡΠ°Π½Π°.
- ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ New pull request.
- ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΠΎΠ»Π΅ Example Comparisons. ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Ρ
ΠΎΡΠΈΡΠ΅ ΡΡΠ°Π²Π½ΠΈΡΡ Ρ
master
. - ΠΡΠ΅ ΡΠ°Π· ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ Π³ΠΎΡΠΎΠ²Ρ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
- ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π±ΠΎΠ»ΡΡΡΡ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ New pull request. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π°ΠΏΡΠΎΡΠ°, Π΄Π°ΠΉΡΠ΅ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Create pull request.
ΠΠΎΠ²ΡΠΉ Pull requestΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ pull request
ΠΡΠ»ΠΈ ΡΡΠΎ Π²Π°Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΡΠΎ ΡΠ»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ master
ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ΅Π· Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Merge pull request. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Confirm merge. Π‘ΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π½ΡΠΆΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Ρ master
Π½Π°ΠΆΠΌΠΈΡΠ΅ Delete branch Π² ΡΠΈΠΎΠ»Π΅ΡΠΎΠ²ΠΎΠΌ Π±ΠΎΠΊΡΠ΅.
ΠΡΠ»ΠΈ Π²Ρ ΡΡΠ°ΡΡΠ²ΡΠ΅ΡΠ΅ Π² ΡΡΠΆΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, ΡΠΎ Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ (ΠΈΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΡ) ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡ. Π₯ΠΎΡΠΈΡΠ΅ Π²Π½Π΅ΡΡΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ? Π‘Π΅ΠΉΡΠ°Ρ β ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. Π‘ΡΠ°Π·Ρ ΠΏΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΌΠΎΠ³ΡΡ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ· Π²Π΅ΡΠΊΠΈ ΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ Ρ master
. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΡΠ°Π·Π²Π΅ΡΡΠΊΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈΡ
Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅.
ΠΠΎΡΠ»Π΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Ρ Π²Π΅ΡΠΊΠΎΠΉ master
. Π Pull request Ρ
ΡΠ°Π½ΠΈΡΡΡ Π·Π°ΠΏΠΈΡΡ ΠΎ Π²Π°ΡΠΈΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ
. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ Π²ΡΠ΅Π³Π΄Π° ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΡΡΡΡ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ ΠΈ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°Π½Ρ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ.
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΠΌΠΎΠΉ ΡΠ²Π΅ΠΆΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ GitHub ΡΠ΅ΡΠ΅Π· git pull
. ΠΠ»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git pull
ΠΠ»Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π²Π΅ΡΠΊΠΈ Ρ Π²Π°ΡΠ΅ΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ:
git merge <ΠΈΠΌΡ_Π²Π΅ΡΠΊΠΈ>
Git ΡΡΠ°ΡΠ°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ»ΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠΠ½ΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ. ΠΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ, ΡΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΡΠ»ΠΈΡΠ½ΠΈΡ Π²ΡΡΡΠ½ΡΡ. ΠΠΎΡΠ»Π΅ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ Π½ΡΠΆΠ½ΡΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΡΠΌΠ΅ΡΡΡΠ΅ ΠΈΡ
Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Β«ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΡ
Β» ΠΈΠ»ΠΈ Β«ΡΠ»ΠΈΡΡΡ
Β» ΡΠ΅ΡΠ΅Π· git add <ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°>
. ΠΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅:
git diff <ΠΈΡΡ ΠΎΠ΄Π½Π°Ρ_Π²Π΅ΡΠΊΠ°> <ΡΠ΅Π»Π΅Π²Π°Ρ_Π²Π΅ΡΠΊΠ° >
ΠΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π²Π΅ΡΠΊΠ΅ master
ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ΅Π·:
git checkout master
ΠΠΎΡΠ»Π΅ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΠ΅ ΡΡΡ Π²Π΅ΡΠΊΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git branch -d new_feature
ΠΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π½Π΅ ΡΠ²ΠΈΠ΄ΡΡ Π²Π°ΡΡ Π²Π΅ΡΠΊΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½Π° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π° Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π²Π΅ΡΠΊΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git push origin <Π²Π΅ΡΠΊΠ°>
ΠΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π°, Π²ΠΎΡ Π²Π°ΠΌ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ GitHub, Π³Π΄Π΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π²ΡΠ΅ ΡΠ°ΠΌΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ Git-ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
git log
ΠΡΠΎΡΠΌΠΎΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:
git log β author=<ΠΈΠΌΡ>
ΠΡΠΎΡΠΌΠΎΡΡ Π½Π΅ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:
git diff
Π‘Π»ΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ? ΠΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΈΠ· 21 ΡΠ°ΠΌΠΎΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git help
ΠΠΈΠ±ΠΎ ΠΏΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°Π·ΡΡΡΠ½Π΅Π½ΠΈΡ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ clone
:
git help clone
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΡΠ΅Π½ΠΈΡΡΠ΅ΠΌΡΡ, Π° Π·Π°ΠΎΠ΄Π½ΠΎ ΠΈ ΠΏΠΎΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΠ΅ΠΌ Π²ΡΠ΅Ρ , ΠΊΡΠΎ Π·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡ Ρ Git ΠΈ GitHub. ΠΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π‘ΡΠ΅Π½Ρ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠ΅ΠΉ GitHub Wall, Π³Π΄Π΅ ΠΈΠ·ΡΡΠ°ΡΡΠΈΠ΅ Git ΠΈ GitHub ΡΠΌΠΎΠ³ΡΡ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠΈΡ ΠΏΠ΅ΡΠ²ΡΡ open-source ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ .
ΠΠ° ΡΠ²ΠΎΠ΅ΠΉ Π‘ΡΠ΅Π½Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π»ΡΠ±ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ. ΠΠ»Π°Π²Π½ΠΎΠ΅ β ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΎ Π²Π΅ΠΆΠ»ΠΈΠ²ΠΎΡΡΠΈ ΠΈ Π΄ΠΎΠ±ΡΠΎΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΡΡΠ°Π²ΡΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡβ¦ Π΄Π° ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ, ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π·ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ ΠΈΠ· README-ΡΠ°ΠΉΠ»Π° (ΡΡΡΠ»ΠΊΡ ΡΠΌ. Π½ΠΈΠΆΠ΅).
git clone https://github.com/bonn0062/github_welcome_wall.git
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ°ΠΉΠ»
welcome_wall.md
Ρ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΌΠΎΡΠΈΠ²ΠΈΡΡΡΡΠ΅ΠΉ ΡΠΈΡΠ°ΡΠΎΠΉ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π° ΡΠ°ΠΉΡΠ΅ GitHub. ΠΠΎ ΠΊΡΠ΄Π° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π΅Π΅ ΡΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, ΠΎΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» Π² Π»ΡΠ±ΠΈΠΌΠΎΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈ Π²ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΌ Π½ΡΠΆΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ. Π’Π°ΠΊ Π·Π½Π°Π½ΠΈΡ Π»ΡΡΡΠ΅ ΡΡΠ²ΠΎΡΡΡΡ. - Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Pull request.
- ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Pull request.
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ β Π²Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠΏΡΠ°Π²ΠΈΠ»ΠΈΡΡ!
Π§ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΊΠΆΠ΅:
Git branch | Atlassian Git Tutorial
Π ΡΡΠΎΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° git branch
ΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ ΠΎΠ±ΡΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² Git. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π² ΡΡΠ΄Π΅ ΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π·Π°ΡΡΠ°ΡΠ½ΠΎΠΉ ΠΊΠ°ΠΊ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ°ΠΊ ΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°. Π Git Π²Π΅ΡΠΊΠΈ β ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠΎ ΡΡΡΠΈ Π²Π΅ΡΠΊΠΈ Π² Git ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ½ΠΈΠΌΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ»ΠΈ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ (Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠ΅Π·Π½ΡΡ), Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π±Π°Π·ΠΎΠΉ ΠΊΠΎΠ΄Π° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ»ΠΎΠΆΠ½Π΅Π΅, ΠΊ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ΠΌ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΈΡΡΠΈΡΡ ΠΈΡΡΠΎΡΠΈΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ.
ΠΠ° ΡΡ
Π΅ΠΌΠ΅ Π²ΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ Π΄Π²ΡΠΌΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ: Π΄Π»Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ°ΡΡΡΠ°Π±Π½ΠΎΠΉ. ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
Π²Π΅ΡΠΊΠ°Ρ
Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π½ΠΈΠΌΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ, Π½ΠΎ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΠ΅ ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠΊΡ (master
).
Git ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π²Π΅ΡΠΎΠΊ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Git Ρ ΡΠ°Π½ΠΈΡ Π²Π΅ΡΠΊΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ. ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΡΠΎ Π²Π΅ΡΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ ΡΠ΅ΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π° Π½Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΡΡΠΎΡΠΈΡ Π²Π΅ΡΠΊΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ.
ΠΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Π²Π΅ΡΠΊΠΈ Π² Git Π½Π΅ ΠΏΠΎΡ ΠΎΠΆΠΈ Π½Π° Π²Π΅ΡΠΊΠΈ Π² SVN. ΠΠ΅ΡΠΊΠΈ Π² SVN ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΡΡΠΏΠ½ΠΎΠΌΠ°ΡΡΡΠ°Π±Π½ΡΡ Π½Π°ΡΠ°Π±ΠΎΡΠΎΠΊ, Π° Π²Π΅ΡΠΊΠΈ Π² Git ΡΠ²Π»ΡΡΡΡΡ Π½Π΅ΠΎΡΡΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ ΡΠ°ΡΡΡΡ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°. ΠΠ°Π»Π΅Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² Git.
ΠΠΎΡΡΠ΄ΠΎΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ
ΠΠ΅ΡΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ΅ΡΠΊΠΈ Π²ΡΡΡΡΠΏΠ°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ/ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠΈ/ΠΊΠΎΠΌΠΌΠΈΡΠ°. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΈΡ ΠΊΠ°ΠΊ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, ΡΠ°Π·Π΄Π΅Π» ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΈΡΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² ΠΈΡΡΠΎΡΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π·Π²ΠΈΠ»ΠΊΠΈ Π² ΠΈΡΡΠΎΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠΎΠΌΠ°Π½Π΄Π° git branch
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°ΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π²Π΅ΡΠΊΠΈ. ΠΠ½Π° Π½Π΅ Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΡΠ°Π·Π΄Π²ΠΎΠ΅Π½Π½ΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠΈ Π²ΠΎΠ΅Π΄ΠΈΠ½ΠΎ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° git branch
ΡΠ΅ΡΠ½ΠΎ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ git checkout
ΠΈ git merge
.
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ
git branch
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° Π²Π΅ΡΠΎΠΊ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΡΠΎ ΡΠΈΠ½ΠΎΠ½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch --list
.
git branch
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ . ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ.
git branch -d
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ. ΠΡΠΎ Β«Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°ΡΒ» ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Git Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ, Π΅ΡΠ»ΠΈ Π² Π½Π΅ΠΉ Π΅ΡΡΡ Π½Π΅ΡΠ»ΠΈΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
git branch -D
ΠΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π² Π½Π΅ΠΉ Π΅ΡΡΡ Π½Π΅ΡΠ»ΠΈΡΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π½Π°Π²ΡΠ΅Π³Π΄Π° ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
git branch -m
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ Π½Π° .
git branch -a
ΠΡΠ²ΠΎΠ΄ ΡΠΏΠΈΡΠΊΠ° Π²ΡΠ΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΎΠΊ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ
ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ Π²Π΅ΡΠΊΠΈ β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡΡ. ΠΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π²Π΅ΡΠΊΡ, Git ΠΏΡΠΎΡΡΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΡΠΈ ΡΡΠΎΠΌ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
git branch crazy-experiment
ΠΡΡΠΎΡΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΡΠ΅, ΡΡΠΎ Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅, β ΡΡΠΎ Π½ΠΎΠ²ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ:
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ. Π§ΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΡΡ Π²Π΅ΡΠΊΡ ΠΊΠΎΠΌΠΌΠΈΡΡ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout
, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add
ΠΈ git commit
.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ
Π²Π΅ΡΠΎΠΊ
ΠΠΎ ΡΠΈΡ
ΠΏΠΎΡ Π²ΡΠ΅ ΡΡΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ. ΠΠΎΠΌΠ°Π½Π΄Π° git branch
ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈ Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ. ΠΠ»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ
Π²Π΅ΡΠΊΠ°Ρ
ΡΠ½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
$ git remote add new-remote-repo https://bitbucket.com/user/repo.git # ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ $ git push crazy-experiment~ # ΠΡΠΏΡΠ°Π²ΠΊΠ° Π²Π΅ΡΠΊΠΈ crazy-experiment Π² Π½ΠΎΠ²ΡΠΉ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ new-remote-repo
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΠΊΠΎΠΏΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ crazy-experiment
Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ .
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Ρ Π·Π°Π²Π΅ΡΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΡ Π² Π²Π΅ΡΠΊΠ΅ ΠΈ ΡΠΎΠ»ΡΠ΅ΡΠ΅ Π΅Π΅ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π±Π°Π·ΠΎΠΉ ΠΊΠΎΠ΄Π°, ΡΡΡ Π²Π΅ΡΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ΄Π°Π»ΠΈΡΡ Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΠΈ ΠΈΡΡΠΎΡΠΈΠΈ:
git branch -d crazy-experiment
ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Π΅ΡΠΊΠ° Π½Π΅ Π±ΡΠ»Π° ΡΠ»ΠΈΡΠ°, ΡΠΊΠ°Π·Π°Π½Π½Π°Ρ Π²ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠ΄Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅:
error: The branch 'crazy-experiment' is not fully merged. If you are sure you want to delete it, run 'git branch -D crazy-experiment'.
ΠΡΠΎ Π·Π°ΡΠΈΡΠ°Π΅Ρ ΠΎΡ ΠΏΠΎΡΠ΅ΡΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΊΠΎ Π²ΡΠ΅ΠΌΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½Ρ ΠΎΠΊΠ°Π·Π°Π»ΡΡ Π½Π΅ΡΠ΄Π°ΡΠ½ΡΠΌ), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π°Π³ -D
(Ρ ΠΏΡΠΎΠΏΠΈΡΠ½ΠΎΠΉ Π±ΡΠΊΠ²ΠΎΠΉ):
git branch -D crazy-experiment
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΄Π°Π»ΡΠ΅Ρ Π²Π΅ΡΠΊΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ Π½Π΅ Π²ΡΠ΄Π°Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΅Π΅ Ρ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΡΡ.
ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ΄Π°Π»ΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠΏΠΈΡ Π²Π΅ΡΠΊΠΈ, Π½ΠΎ Π²Π΅ΡΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡΡΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ . ΠΠ»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
git push origin --delete crazy-experiment
ΠΈΠ»ΠΈ
git push origin :crazy-experiment
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠΈΠ³Π½Π°Π» Π½Π° ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ crazy-experiment
.
Π Π΅Π·ΡΠΌΠ΅
Π ΡΡΠΎΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ° Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² Git ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch
. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ git branch
β ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅, ΠΏΡΠΎΡΠΌΠΎΡΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ. ΠΠ»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΌΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ git checkout
. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ
Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout
, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ ΠΈ ΠΈΡ
ΡΠ»ΠΈΡΠ½ΠΈΠΈ, ΡΠΌ. Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ git checkout
.
ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Π² Git ΡΠ²Π»ΡΡΡΡΡ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ½ΡΠΌΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΡΡΠΎ. Π’Π°ΠΊΠ°Ρ Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π² Git. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠ°Ρ
Π² Git ΡΠΌ. Π½Π° Π½Π°ΡΠΈΡ
ΡΡΡΠ°Π½ΠΈΡΠ°Ρ
, Π³Π΄Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡΡΡ:
ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ, ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ GitFlow ΠΈ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Ρ ΡΠΎΡΠΊΠ°ΠΌΠΈ.
ΠΠ΄Π΅ ΠΈ ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git Branch: ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ Π² Git
VPS
access_time
16 ΡΠ½Π²Π°ΡΡ, 2020
hourglass_empty
3ΠΌΠΈΠ½. ΡΡΠ΅Π½ΠΈΡ
Git β ΡΡΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ½ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ΅ΡΡΡΠ·Π½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ , ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ GNOME ΠΈ Π΄ΡΡΠ³ΠΈΠ΅. ΠΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Git ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ Π²Π΅ΡΠΊΠ°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠ»ΡΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ git branch, ΠΈΠ»ΠΈ Π²Π΅ΡΠΊΠΈ Git. ΠΡΠ±ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ VPS, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎ Π²ΡΠΈΠ³ΡΠ°Π΅Ρ ΠΎΡ ΡΡΠΎΠΉ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ Π² Git ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π½Π°ΠΌ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΡΠΈΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ. ΠΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΡΠ°ΡΡΠΈΡΠΈΡ Π²Π°ΡΠΈ Π±Π°Π·ΠΎΠ²ΡΠ΅ Π·Π½Π°Π½ΠΈΡ Git.
Π§ΡΠΎ Π’Π°ΠΊΠΎΠ΅ Git Branch
Git branching, ΠΈΠ»ΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ Git β ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π½Π°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ Π²Π΅ΡΡΠΈΠΈ. ΠΠ΅ΡΠ²Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ β ΡΡΠΎ Π±ΠΈΡΡΡΠΊΠ°ΡΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΊΠΎΠ΄Π°, ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΏΡΡΡ Π΄Π»Ρ Π΅Π³ΠΎ ΡΠ²ΠΎΠ»ΡΡΠΈΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΠΊΠΈ Git, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΠΎ ΠΈ ΡΠΎΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² Π²Π°Ρ ΠΊΠΎΠ΄.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Git Branches ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ². Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠ½ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π²Π°:
- ΠΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π΅ ΠΌΠ΅ΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅.
- Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π²Π΅ΡΠΎΠΊ Git ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΡ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈ ΡΠΎΠΌ ΠΆΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΡ Π²Π΅ΡΠ²Ρ, ΡΠ΅ΡΡΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ ΠΈ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΡ Π²Π΅ΡΠ²Ρ.
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ, ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΎΠΏΡΡΠ°.
ΠΠ΄Π΅ ΠΈ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git Branch
ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²Π°ΡΠ΅ΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ ΠΏΠΎ SSH ΠΏΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ. ΠΠΎΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ PuTTY, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ!
Π Π°Π±ΠΎΡΠ°ΡΡ Ρ Git branches Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ, ΡΡΠΎ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΠΌΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄. ΠΠΎ, ΠΊΠ°ΠΊ ΠΈ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ Π΄ΡΡΠ³ΠΈΡ ΡΠ»ΡΡΠ°Π΅Π², ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Ρ Π²Π°Ρ Π²Π΅ΡΠΎΠΊ, ΡΠ΅ΠΌ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠΌΠΈ.
Π Π»ΡΠ±ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Git ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ Π²Π΅ΡΠ²ΠΈ, Π²Π²Π΅Π΄Ρ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅:
git branch
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ Git branch, Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΡΡ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ . Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ:
git branch [new_branch]
ΠΠ°ΡΠ΅ΠΌ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git checkout [new_branch]
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΠΎΠ±ΡΠΈΡ Π½Π°ΠΌ, ΡΡΠΎ ΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠ»ΠΈ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ. ΠΡ Π½Π°Π·Π²Π°Π»ΠΈ Π΅Ρ ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ, ΡΠ°ΠΊ ΡΡΠΎ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅:
Switched to branch βtestβ
Π’Π΅ΠΏΠ΅ΡΡ Π² ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ ΠΊΠΎΠ΄Π°, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°Ρ ΠΎΡΠΈΠΌ, Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ ΠΌΠ΅Π½ΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Git branch. ΠΠ°ΠΊ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΊΠΎΠ΄Π°.
ΠΡΠ»ΠΈ ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΏΠΈΡΠΊΠ° Π²Π΅ΡΠ²Π΅ΠΉ, ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° ΠΈ ΡΡΠΎ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π² Π½Π΅ΠΉ.
git branch
ΠΡΡΡ ΠΊΠΎΠ΅-ΡΡΠΎ, ΠΎ ΡΡΠΌ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ΄Π΅Π»Π°ΡΡ commit Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ, ΡΡΠΎΠ±Ρ Git ΠΏΠΎΠ½ΡΠ», ΡΡΠΎ ΡΡΠΎ master branch. ΠΡΠ»ΠΈ ΠΌΡ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΡΠ΄Π΅Π»Π°Π΅ΠΌ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΎΡΠΈΠ±ΠΊΡ. ΠΡΠ°ΠΊ, ΡΠ½Π°ΡΠ°Π»Π° ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ commit, Π° Π·Π°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ Π²Π΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ΠΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· Git, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git branch -d [branch_name]
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΌΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠΎΠΉ Π²Π΅ΡΠΊΠ΅, ΠΊΠΎΡΠΎΡΡΡ Ρ ΠΎΡΠΈΠΌ ΡΠ΄Π°Π»ΠΈΡΡ. Π‘Π½Π°ΡΠ°Π»Π° ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΠΌΡΡ Π² Π³Π»Π°Π²Π½ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΡΠΆΠ΅ ΠΎΡΡΡΠ΄Π° ΡΠ΄Π°Π»ΡΠ΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ:
git checkout master
git branch -d test
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π½Π°ΡΡΡΠΏΠΈΠ» ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ Π²Π½Π΅ΡΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Π΅ΡΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΠΎΠ½Π° ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΠ»Π°ΡΡ Π² ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠ²ΡΠ·Π°ΡΡ Π΅Ρ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ»ΠΈΡΠ½ΠΈΡ (merge).
Π‘Π½Π°ΡΠ°Π»Π° Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Π²Π΅ΡΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π° Π΄ΡΡΠ³Π°Ρ Π²Π΅ΡΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ Ρ ΠΎΡΠΈ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠΈΡΡ ΡΠ΅ΡΡΠΎΠ²ΡΡ Π²Π΅ΡΠ²Ρ ΠΊ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ β master branch. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² master branch ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ merge Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git merge [branch]
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²Π΅ΡΠΊΠΈ Git Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΡ. ΠΠ°ΠΌ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΠΎΡΠ½ΠΎΠ²Ρ ΠΈ ΡΡΠ°ΡΠ°ΡΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π² ΡΠ²ΠΎΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΡΠ²ΠΎΠ΄Ρ
Π£ΠΌΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Git branch, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΡΠΌ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅. ΠΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Π² ΡΠ°Π·Π½ΡΡ Π²Π΅ΡΠΊΠ°Ρ Git Ρ ΡΠΌΠΎΠΌ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ Π½Π°ΡΡΠΈΠ»ΠΈ Π²Π°Ρ ΠΎΡΠ½ΠΎΠ²Π°ΠΌ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ Git.
Π’ΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ, ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Git ΠΊΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ Π²Π΅ΡΠΎΠΊ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. Π£Π΄Π°ΡΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ!
ΠΡΠ°Π²ΠΈΠ»Π° ΡΠ°Π±ΠΎΡΡ Ρ git | Flexberry PLATFORM Documentation
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ, Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
Git (Π½Π΅ ΠΏΡΡΠ°ΡΡ Ρ github) — ΡΡΠΎ Π½Π°Π±ΠΎΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈ ΡΠΈΠΊΡΠΈΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ . Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΡ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ, ΡΠ»ΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ Π²Π΅ΡΡΠΈΠΉ.
Git ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ, ΡΠΎ Π΅ΡΡΡ Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Ρ ΡΠ°Π½ΡΡΡΡ ΡΠ°ΠΉΠ»Ρ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΡΠΎΡ ΡΠ°Π½ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΠ°Ρ Π½Π° ΠΆΠ΅ΡΡΠΊΠΎΠΌ Π΄ΠΈΡΠΊΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠΏΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΎΠ½Π»Π°ΠΉΠ½, ΡΡΠΎ ΡΠΈΠ»ΡΠ½ΠΎ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π»ΡΠ΄Π΅ΠΉ.
GitHub — ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Ρ ΠΎΡΡΠΈΠ½Π³ΠΎΠ² git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ git
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ git ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GUI-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π² Ρ.Ρ. ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ git Π² Visual Studio ΠΈ WebStorm), Π½ΠΎ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π², Ρ git ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ (ΡΠΌΡΠ»ΡΡΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°).
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΈΠ²ΡΠΊΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ git ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π½Π΅ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡ Π²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ git, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π».
ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΏΠΈΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π² ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π΄ΠΎ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git clone
.
# ΠΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git clone [URL].
git clone https://github.com/Flexberry/ember-flexberry.git
ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅
ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ master
ΠΈΠ»ΠΈ develop
. ΠΡΡΠ³ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ β ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΠ΅ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ.
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout <ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ>
.
Π‘Π΄Π΅Π»Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡ ΡΡΠ°Π·Ρ Π½Π° Π½Π΅Π΅, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout -b <ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ>
.
Note: ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π²Π΅ΡΠΎΠΊ ΡΠΎΠ±Π»ΡΠ΄Π°ΠΉΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈΡ
ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠ»ΠΈ Π²Π΅ΡΠΊΠ° Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ, ΡΠΎ Π΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ Π²ΠΈΠ΄: feature-<Π½ΠΎΠΌΠ΅Ρ Π·Π°Π΄Π°ΡΠΈ Π΅ΡΠ»ΠΈ Π΅ΡΡΡ>-<Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π°Π΄Π°ΡΠΈ>
. ΠΡΠ»ΠΈ Π²Π΅ΡΠΊΠ° Π΄Π»Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ, ΡΠΎ fix-<Π½ΠΎΠΌΠ΅Ρ Π·Π°Π΄Π°ΡΠΈ Π΅ΡΠ»ΠΈ Π΅ΡΡΡ>-<Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π°Π΄Π°ΡΠΈ>
.
# ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π²Π΅ΡΠΊΡ ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Π΄ΠΎ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡΡ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠΊΠ° master ΠΈΠ»ΠΈ develop)
git checkout develop
# ΠΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ.
git pull
# Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ.
git checkout -b <ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ>
Π‘Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ Π² ΡΠ΅ΠΊΡΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ: git merge <Π²Π΅ΡΠΊΠ°>
.
ΠΠ°ΠΏΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΠΈΡΠΎΡΠΈΠΉ
ΠΠ±Π»Π°ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (staging area) — ΠΎΠ±Π»Π°ΡΡΡ ΠΊΡΠ΄Π° ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ(ΡΠ°ΠΉΠ»Ρ), ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°Π΄ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² ΠΊΠΎΠΌΠΌΠΈΡ.
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² staging area — git add <ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°>
ΠΈΠ»ΠΈ git add *
Π΅ΡΠ»ΠΈ Π½Π°Π΄ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π£Π΄Π°Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· staging area — git checkout -- <ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°>
ΠΈΠ»ΠΈ git checkout -- *
Π΅ΡΠ»ΠΈ Π½Π°Π΄ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΈ staging area — git status
ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ(ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ) ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ — git commit -m "ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ"
Note: Π‘ΠΎΠ·Π΄Π°Π²Π°Ρ ΠΊΠΎΠΌΠΌΠΈΡ, Π½Π°Π΄ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ½ΡΡΡΠΉ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΡΠ°Π½Π΄Π°ΡΡ Conventional Commits.
Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ
Π£Π΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ β ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΠ±ΡΠΈΠΌ (ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π½Π° github), Π² Π½Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΡΠΎΠ±Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΌΠΎΠ³Π»ΠΈ ΠΈΡ ΡΠ²ΠΈΠ΄Π΅ΡΡ. Π£Π΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ, Π½ΠΎ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΠ½ Π±ΡΠ²Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½.
ΠΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π² Π²Π΅ΡΠΊΠ΅, Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ — git pull
ΠΡΠΏΡΠ°Π²ΠΈΡΡ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ — git push origin <Π²Π΅ΡΠΊΠ°>
ΠΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ
Please enable JavaScript to view the comments powered by Disqus.
Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ Git. Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ β ΠΠ»ΠΎΠ³ HTML Academy
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° First Aid Git ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ HTML Academy.
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΒ ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Π½Π΅ΡΡΠ½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π²Β ΡΠ΅ΠΆΠΈΠΌΠ΅ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½ΠΈΡ, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ
Β ΠΊΒ Π²Π΅ΡΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git stash apply. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ git diffΒ β ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠ²ΠΈΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΡ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π·Π°ΡΠ΅ΠΌ ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡΒ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
, Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git stash drop
ΠΡΠ»ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½ΠΈΡ, Π½Π°ΠΉΡΠΈ Π½ΡΠΆΠ½ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git stash list
Π·Π°ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠΈΡΡ Π΅Π³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ:
git stash@{1}
ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΎΡΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π²Π΅Π΄ΡΡΡΡ ΠΎΡΒ Π½ΡΠ»Ρ.
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅Π³Π°
ΠΒ ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉ ΡΠ΅Π³, Π½Π°ΡΠ°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΒ Π΅Π³ΠΎ ΠΏΠΎΠΈΡΠΊΠ°:
git fsck --unreachable | grep tag
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π½ΡΠΆΠ½ΡΠΉ ΡΠ΅Π³ Π½Π°ΠΉΠ΄Π΅Π½, Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ:
git update-ref refs/tags/Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΅Π³Π°
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°
ΠΡΠ»ΠΈ Π²ΡΒ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ», Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ:
git checkout myfile.txt
ΠΡΠ»ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ°ΠΉΠ» ΠΈΠ·Β ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ·Π½Π°ΡΡ Ρ
Π΅Ρ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈΒ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git checkout $commit~1 myfile.txt
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ
Π‘Β ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠ°Π½Π΄Ρ git reflog ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ Ρ
Π΅Ρ (SHA1) ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π²Β ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅. Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΡΡΠΎΡ Ρ
Π΅Ρ ΠΈΒ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π²Β ΠΊΠΎΠΌΠ°Π½Π΄Π΅:
git checkout <sha>
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄Π°Π»ΡΠ½Π½ΡΡ Π²Π΅ΡΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git checkout -b <Π½Π°Π·Π²Π°Π½ΠΈΠ΅-Π²Π΅ΡΠΊΠΈ>
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΏΠ΅ΡΠ΅Π΄ Π΅Π³ΠΎ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git commit --amend
, ΠΎΠ½Π° ΠΎΡΠΊΡΠΎΠ΅Ρ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, Π²Β ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²Π½Π΅ΡΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ Π²Β ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΒ Π½Π°ΠΏΡΡΠΌΡΡ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git commit --amend -m "ΠΠΎΠ²ΠΎΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅"
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ
ΠΒ Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΡΠ΅ΡΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° ΡΠ°Π³Π°. Π‘Π½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠ°Π½Π΄Ρ git commit --amend
, Π°Β Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ: git push <remote> <branch> --force
ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: ΠΏΠΎΠ΄ΠΎΠ±Π½Π°Ρ Π½Π°ΡΠΈΠ»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊΒ ΠΏΠΎΡΠ΅ΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΈΠ·Β Π²Π½Π΅ΡΠ½Π΅ΠΉ Π²Π΅ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ ΡΒ Π½Π΅ΠΉ Π΄Π°Π²Π½ΠΎ Π½Π΅Β Π±ΡΠ»ΠΎ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ, ΡΠΎΠ±Π»ΡΠ΄Π°ΠΉΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΡ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π°Π»ΠΈΠ°ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄ Π²Β ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅
Π£ΡΡΠ°Π»ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΠ΅ΡΠ°ΡΠ°ΡΡ git status? ΠΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ ΠΏΡΠΎΡΡΠΎΠΉ Π°Π»ΠΈΠ°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΡΠ΅ ΠΈΒ Π±ΡΡΡΡΠ΅Π΅ Π²Π±ΠΈΠ²Π°ΡΡ Π²Β git.
git config --global alias.st status
βΒ ΡΠ΅ΠΏΠ΅ΡΡ Π½ΡΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ git st
ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΉΡΠΈ Π΄Π°Π»ΡΡΠ΅ ΠΈΒ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π°Π»ΠΈΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ:
git config --global alias.logme 'log -p --author=Rob'
Π’Π΅ΠΏΠ΅ΡΡ Π°Π»ΠΈΠ°Ρ git logme Π±ΡΠ΄Π΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π²ΡΠ΅ Π½Π°ΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ.
ΠΠΎΠΌΠΌΠΈΡ Π²Β Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ
ΠΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π°Β Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Π²ΡΒ Π·Π°Π±ΡΠ»ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ:
git checkout -b Π½Π°Π·Π²Π°Π½ΠΈΠ΅-Π½ΠΎΠ²ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ.
ΠΒ Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊΒ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅:
git checkout Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ
…ΠΈ Β«ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡΒ» Π΄ΠΎΒ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ.
Π§ΡΠΎΠ±Ρ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git log ΠΈΒ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ Ρ
Π΅Ρ (SHA1) ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ.. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ a31a45c.
Π’Π΅ΠΏΠ΅ΡΡ Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ±ΡΠΎΡΠΈΡΡ: git reset --hard a31a45c
ΠΈΒ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΠΈΠΉΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ Π²Β ΡΠΎΠΌ, ΡΡΠΎ Π½ΠΈΠΊΡΠΎ Π½Π΅Β ΠΎΡΠΏΡΠ°Π²Π»ΡΠ» ΠΊΠΎΠΌΠΌΠΈΡΡ Π²Β ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Π²ΠΎΒ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²ΡΡΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ, Π²Β ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΏΠΎΡΠ΅ΡΡΠ½Ρ!
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡΠ»Ρ
Π§ΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡΠ»Ρ Π²Β ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΡΡ ΠΊΒ ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡΠ»Ρ:
git submodule update --remote --merge <path>
ΠΡΠΊΠ°Ρ ΠΊΒ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΠΊΠΎΠΌΠΌΠΈΡΡ Π²Β ΠΈΡΡΠΎΡΠΈΠΈ
ΠΡΠ»ΠΈ Π²Π°Ρ Π½Π΅Β ΠΎΡΠ΅Π½Ρ Π±Π΅ΡΠΏΠΎΠΊΠΎΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Β Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΡΠΎΒ ΠΌΠΎΠΆΠ½ΠΎ Β«ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡΒ» ΠΊΒ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΠΊΠΎΠΌΠΌΠΈΡΡ Π²Β ΠΈΡΡΠΎΡΠΈΠΈ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git reset --hard HEAD~1
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ HEAD Π½Π°Β ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Ρ
Π΅ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΡΠΌΠ΅Π½Π° ΠΊΠΎΠΌΠΌΠΈΡΠ° Π΄ΠΎΒ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΡΠ»ΠΈ Π²ΡΒ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΠ΅ΡΠ΅ΡΡ, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° git reset.
ΠΡΠΎΡΡΠ°Ρ ΠΎΡΠΌΠ΅Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°:
git revert -n HEAD
ΠΡΠΌΠ΅Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡΒ Π½Π΅ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΡΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΒ ΠΏΠ°ΠΏΠΎΠΊ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°. Π‘Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git checkout myfile.txt
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΏΡΡΡ ΠΊΒ ΡΠ°ΠΉΠ»Ρ:
git checkout -- ΠΏΡΡΡ-Π΄ΠΎ-ΡΠ°ΠΉΠ»Π°
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°
ΠΡΠ»ΠΈ Π²ΡΒ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git log --follow -p -- myfile
ΠΡΠ³ΡΠΌΠ΅Π½Ρ βfollow ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ²Π΅ΡΡΠΈ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°Π΄ ΡΠ°ΠΉΠ»ΠΎΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Β ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΎΠ½Β Π±ΡΠ» ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½.
ΠΡΠ»ΠΈ ΠΎΠΏΡΡΡΠΈΡΡ ΠΎΠΏΡΠΈΡ -p, ΡΠΎΒ ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π½ΠΎΒ Π½Π΅Β ΠΈΡ
Β ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅.
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΎΡΒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°
Π₯ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΡΠ΄Π΅Π»Π°Π» ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠ°ΡΡΠ½ΠΈΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ?
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ, ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π²Β ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠ±ΡΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²: git shortlog -s -n
ΠΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ
Π£Π·Π½Π°ΡΡ, Π²Β ΠΊΠ°ΠΊΠΈΡ
ΠΊΠΎΠΌΠΌΠΈΡΠ°Ρ
ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git log --diff-filter=D --summary
ΠΠ½Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², Π²Β ΠΊΠΎΡΠΎΡΡΡ
ΡΠ΄Π°Π»ΡΠ»ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ.
ΠΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΏΠΎΒ Π°Π²ΡΠΎΡΡ
Π§ΡΠΎΠ±Ρ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠΎΒ Π°Π²ΡΠΎΡΡ, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git log --author="ΠΠΌΡ Π°Π²ΡΠΎΡΠ°"
ΠΡΠΈΡΡΠΊΠ° Π²ΡΠ΅Ρ ΡΠΊΡΡΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ
ΠΡΠΈΡΡΠΈΡΡ Π²ΡΠ΅ ΡΠΊΡΡΡΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git stash clear
ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΒ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ
ΠΡΠ΅Π΄Π»ΠΎΠΆΠΈΠΌ, ΡΒ Π²Π°Ρ Π΅ΡΡΡ Π²Π΅ΡΠΊΠ° Β«fix-bug25Β», ΠΊΠΎΡΠΎΡΡΡ Π²ΡΒ Π·Π°Ρ
ΠΎΡΠ΅Π»ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ Π²Β Β«hotfix-usersΒ». ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ:
git branch -m fix-bug25 hotfix-users
ΠΒ Π·Π°ΡΠ΅ΠΌΒ β ΡΠ΄Π°Π»ΡΠ½Π½ΡΡ Π²Π΅ΡΠΊΡ: ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ Π΅ΡΒ Π½Π°ΠΏΡΡΠΌΡΡ Π½Π΅Π»ΡΠ·Ρ, ΠΏΠΎΡΡΠΎΠΌΡ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π΅ΡΒ ΡΠ΄Π°Π»ΠΈΡΡ, ΠΈΒ Π·Π°ΡΠ΅ΠΌ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ ΡΠΆΠ΅ ΡΒ Π½ΠΎΠ²ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΠΈΡΡΡΠΏΠ°ΡΡ ΠΊΒ ΡΡΠΈΠΌ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌ, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π½ΠΈΠΊΡΠΎ ΠΈΠ·Β ΡΠ»Π΅Π½ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅Β ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΒ ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ! Π£Π΄Π°Π»ΡΠ΅ΠΌ Π²Π΅ΡΠΊΡ: git push origin :fix-bug25
ΠΒ ΡΠ΅ΠΏΠ΅ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ ΠΏΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ Π΅ΡΒ ΡΒ Π½ΠΎΠ²ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ: git push origin hotfix-users
ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅Π³Π°
Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅Π³:
git tag Π½ΠΎΠ²ΠΎΠ΅-Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΅Π³Π° ΡΡΠ°ΡΠΎΠ΅-Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΅Π³Π° git tag -d ΡΡΠ°ΡΠΎΠ΅-Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΅Π³Π° git push origin :refs/tags/ΡΡΠ°ΡΠΎΠ΅-Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΅Π³Π° git push --tags
ΠΠ΅ΡΠ΅ΡΡΠ°ΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ
ΠΡΠ»ΠΈ Π²ΡΒ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΆΠ΅ Π΅ΡΡΡ Π²Β ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π½ΠΎΒ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΆΠ΅Π»Π°Π΅ΡΠ΅ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ Π΅Π³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΒ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git rm -r --cached
ΠΠ½Π° ΡΠ΄Π°Π»ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·Β Π·ΠΎΠ½Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² (staging area). ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git add .
ΠΈΒ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΡΠ΄Π°Π»ΡΠ½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΠΊΒ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈΒ ΠΏΠ°ΠΏΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git add -u
ΠΡΠ»ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π²Β Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΡΡ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
git add -u .
ΠΠΎΠΈΡΠΊ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²ΠΎΒ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°Ρ
Π§ΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠΌΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π½ΡΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
git log --grep <Π·Π°ΠΏΡΠΎΡ>
ΠΠΎΠΌΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡΠΈΠΉ ΡΠ°ΠΉΠ», ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ΅ΡΡΠ½Π½ΡΠΉ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠΌΠ΅ΡΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡΠΈΡ
ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ΅ΡΡΠ½Π½ΡΠ΅, ΡΡΠΎΠ±Ρ ΠΈΡ
Β ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git add Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ°ΠΉΠ»Π°
ΠΠ°ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ git commit, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΠΈΒ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΡΠΎΡΠΌΠΎΡΡ Π²ΡΠ΅Ρ Π½Π΅ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΡ Π½Π΅Β Π±ΡΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Ρ Π²Β ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΊΠΈ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git log --branches --not --remotes
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ:
git log origin/master..HEAD
ΠΡΠΎΡΠΌΠΎΡΡ ΡΡΠ°ΡΠΎΠΉ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ ΡΠ°ΠΉΠ»Π°
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° Π²Β ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²Β ΠΏΡΠΎΡΠ»ΠΎΠΌ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git show commitHash:myfile.txt
ΠΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π΄Π»Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΡΠ»ΠΈ Π²ΡΒ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ, ΠΈΒ Ρ
ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³Π»ΠΈ ΡΒ Π½Π΅ΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git push -u origin Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΠΌΠΎΠ΅ΠΉ-Π½ΠΎΠ²ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ
Π’Π΅ΠΏΠ΅ΡΡ ΠΎΠ½ΠΈ ΡΠΎΠΆΠ΅ ΡΠΌΠΎΠ³ΡΡ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Β ΡΡΡ Π²Π΅ΡΠΊΡ.
Π‘Π±ΡΠΎΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π΄ΠΎΒ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ
ΠΒ ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ, ΡΠ±ΡΠΎΡΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Π΄ΠΎΒ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π²ΡΡ
ΠΏΡΠΎΡΡΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄.
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ²Π΅ΠΆΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΠ·Β ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ:
git fetch Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ.
ΠΒ Π·Π°ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠΎΠ±ΡΠΈΡΡ git, ΡΡΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Β«ΠΎΡΠΊΠ°ΡΠΈΡΡΒ» Π΄ΠΎΒ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ:
git reset --hard origin/Π½Π°Π·Π²Π°Π½ΠΈΠ΅-Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ.
ΠΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ, ΠΏΠ΅ΡΠ΅Π΄ ΡΠ±ΡΠΎΡΠΎΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΒ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΊΠΎΠΌΠΌΠΈΡ: git commit -m Β«ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅Β»
git branch Π½Π°Π·Π²Π°Π½ΠΈΠ΅-Π½ΠΎΠ²ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ
Π‘ΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π²Π΅ΡΠΊΡ ΡΒ master-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ
Π§ΡΠΎΠ±Ρ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Β ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ master (ΠΈΠ»ΠΈ ΡΒ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, ΡΒ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΒ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ) Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Β«ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡΒ» Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²ΡΒ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ Π²Π΅ΡΠΊΠΎΠΉ foobar:
git checkout foobar
ΠΒ Π·Π°ΡΠ΅ΠΌ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΠ΅ Β«ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β»:
git rebase master
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Ρ ΠΊΠΎΠΌΠΌΠΈΡΡ origin ΠΈΠ·Β master. ΠΠΎΡΠ»Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΏΡΠΎΡΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git rebase βcontinue. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΡΠ²ΠΎΠ΅ΠΉ Π²Π΅ΡΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ Π΅ΡΒ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ (merge) ΡΒ Π³Π»Π°Π²Π½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ.
Π‘Π»ΠΈΡΠ½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΒ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ
ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΡΠΌΠΎ Π²Β ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ (merge). ΠΠ°ΠΌ ΡΡΠΎΠΈΡ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΈΡΡΠΎΡΠΈΡ ΡΠ»ΠΈΡΠ½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π°Π³ βno-ff, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ noΒ fast forward.
ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π²Β Π²Π΅ΡΠΊΡ, Π²Β ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄ΡΡ Π²Π»ΠΈΠ²Π°ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π²Β Π΅ΡΒ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΈΒ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ:
git merge <Π΄ΡΡΠ³Π°Ρ-Π²Π΅ΡΠΊΠ°> --no-ff
ΠΠ°ΡΠ΅ΠΌ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΒ ΠΊΠΎΠΌΠΌΠΈΡΠ΅ mergeΒ X intoΒ Y branch, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π²ΡΒ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΌΠ΅Π»ΠΎ Π·Π°ΠΏΡΡΠΈΡΡ Π²Π°ΡΠ΅ ΡΠ»ΠΈΡΠ½ΠΈΠ΅.>
Π‘ΠΎΠ²ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΈΒ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
ΠΠ΄Π΅ΡΡ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ master-Π²Π΅ΡΠΊΠΈ, ΡΠΎΒ Π½Π°ΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git rebase -i master. ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ Π½Π΅Β ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π΅ΡΠΊΠΈ, ΡΠΎΒ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π±Π°Π·ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ HEAD.
ΠΡΠ»ΠΈ Π΅ΡΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π²Β ΡΠΎΠ²ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ Π΄Π²ΡΡ
ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git rebase -i HEAD~2.
ΠΠΎΡΠ»Π΅ Π΅ΡΒ Π²Π²ΠΎΠ΄Π° ΠΏΠΎΡΠ²ΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎΒ Π²ΡΠ±ΠΎΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΒ ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΒ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΡΠ°ΡΠ΅ΠΉΡΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ², ΡΠΎΒ Π²Β ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ pick, Π°Β Π΄Π»Ρ Π²ΡΠ΅Ρ
ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π±ΡΠΊΠ²Ρ Π½Π°Β f. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ Π·Π΄Π΅ΡΡ
Π‘ΠΎΠ²ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΏΠΎΒ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π²Β Π²Π΅ΡΠΊΡ ΡΠ΅Π»ΠΈΠ·Π°
ΠΡΠ»ΠΈ Π²ΡΒ ΡΠ΅ΡΠΈΡΠ΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΡΡ ΠΈΒ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ, ΡΠΎΒ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π²Β Π²Π΅ΡΠΊΠ΅ ΡΠ΅Π»ΠΈΠ·Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΡΡΠΎΡΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΡΡΠ°Π½Π΅ΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ.
ΠΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΡΡΠΈΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΡΡΠ΅ΠΊΡΠ°:
git fetch origin git checkout [release-branch] git rebase origin/[release-branch] git merge βsquash βno-commit [feature-branch] git commit -m 'Merge X into Y'
ΠΒ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ Π²Β Π²Π΅ΡΠΊΠ΅ ΡΠ΅Π»ΠΈΠ·Π°, Π°Β ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Β Π²Π΅ΡΠΊΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΡΡΠ°Π½Π΅ΡΡΡ Π½Π΅ΡΡΠΎΠ½ΡΡΠΎΠΉ.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΒ Π²Π΅ΡΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΉ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΡΒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΡΠ΅ΠΊΡΡΠ΅ΠΉ
Π§Π°ΡΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ°ΠΉΠ»Ρ Π²Β Π²Π΅ΡΠΊΠ΅, ΡΡΠΎΠ±Ρ ΡΡΠΎ-ΡΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ, ΠΈΒ Π»ΠΈΡΡ ΠΏΠΎΠ·Π΄Π½Π΅Π΅ Π²ΡΠΏΠΎΠΌΠΈΠ½Π°ΡΡ, ΡΡΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Β ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ. ΠΒ ΡΡΠ°ΡΡΡΡ, Π΅ΡΡΡ ΡΠΏΠΎΡΠΎΠ± ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΡΠΆΠ΅ Π²Β ΠΏΡΠΎΡΠ΅ΡΡΠ΅:
git checkout -b Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΠΌΠΎΠ΅ΠΉ-Π½ΠΎΠ²ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·Β ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ Π²Β Π½ΠΎΠ²ΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΡΠΎΠΌ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Β«Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡΒ».
Π£Π±ΡΠ°ΡΡ ΡΠ°ΠΉΠ» ΠΈΠ·Β Π±ΡΡΠ΅ΡΠ°
Π§ΡΠΎΠ±Ρ ΡΠ±ΡΠ°ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΉ ΠΏΠΎΒ ΠΎΡΠΈΠ±ΠΊΠ΅ ΡΠ°ΠΉΠ» ΠΈΠ·Β Π±ΡΡΠ΅ΡΠ°, Π½ΡΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git reset HEAD unlovedfile.txt
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π½Π΅ΡΠ½Π΅ΠΉ Π²Π΅ΡΠΊΠΈ
ΠΡΠ»ΠΈ Π²ΡΒ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ, Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git push origin --delete Π½Π°Π·Π²Π°Π½ΠΈΠ΅-Π²Π΅ΡΠΊΠΈ
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΒ ΠΏΠ°ΠΏΠΎΠΊ
Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ Π½Π΅ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΒ ΠΏΠ°ΠΏΠΊΠΈ ΠΈΠ·Β ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Π½Π°Π±Π΅ΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git clean -f
Π§ΡΠΎΠ±Ρ Π²Β ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ ΡΠ΄Π°Π»ΠΈΡΡΒ ΠΈΡ
:
git clean -fd
ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°: ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠ²Π»ΡΡΡΡΡ Π»ΠΈΡΠ½ΠΈΠΌΠΈ, ΠΏΠ΅ΡΠ΅Π΄ ΠΈΡ
Β Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ, Π½Π°Π±Π΅ΡΠΈΡΠ΅:
git clean -n
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΡΡ Π²Π΅ΡΠΎΠΊ, ΡΡΡΡΡΡΡ ΠΈΠ·Β Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΡΠ»ΠΈ Π²Π΅ΡΠΊΠ° ΡΠ΄Π°Π»Π΅Π½Π° ΠΈΠ·Β Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π΅ΡΒ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ΅ΡΠ΅ΡΡ ΠΈΠ·Β Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΒ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
git-remote prune Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ.
ΠΠ½Π° ΡΠ΄Π°Π»ΠΈΡ ΡΡΠ°ΡΡΡ Π²Π΅ΡΠΊΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΆΠ΅ Π±ΡΠ»Π° ΡΡΡΡΡΠ° ΠΈΠ·Β Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π½ΠΎΒ Π²ΡΡ Π΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Π²Β remotes/Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΉ-Π²Π΅ΡΠΊΠΈ.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΠΈΠ·Β git ΡΒ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ Π΅Π³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΠΉΠ» ΠΈΠ·Β git, Π½ΠΎΒ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ Π΅Π³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git rm --cached myfile.txt
ΠΠ΅Π· ΠΠΈΡΠ° ΠΈΒ ΠΆΠΈΠ·Π½Ρ Π½Π΅Β ΡΠ°
ΠΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΡ Π²Β Git Π½Π°Β ΠΊΡΡΡΠ°Ρ HTMLΒ Academy. ΠΡΒ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ Π²ΡΡ, ΡΡΠΎ Π·Π½Π°Π΅ΠΌ ΡΠ°ΠΌΠΈ, ΡΡΠΎΠ±Ρ Π²ΡΒ ΠΏΡΠΎΠΊΠ°ΡΠ°Π»ΠΈ Π½Π°Π²ΡΠΊΠΈ Π²Β Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.
Π£Π·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅
ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ . Π§Π°ΡΡΡ 2
Π§Π°ΡΡΡ 1, Π§Π°ΡΡΡ 2
Π Π°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Β GitHub
ΠΠΎΠΏΡΡΡΠΈΠΌ, Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΊΡΡΠ΅ΠΉ ΡΠ°Π·Π½ΡΡ ΠΈΠ΄Π΅ΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. Π§ΡΠΎ-ΡΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²ΠΎ, Π° Π½Π°Π΄ ΡΠ΅ΠΌ-ΡΠΎ Π΅ΡΠ΅ ΡΡΠΎΠΈΡ ΠΏΠΎΡΡΡΠ΄ΠΈΡΡΡΡ. ΠΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ Π²Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ°Π΅ΡΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΡΠ΅ΠΌ-ΡΠΎ ΡΠ²ΠΎΠΈΠΌ. ΠΠ΄Π΅ΡΡ ΠΈ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅!
ΠΠ΅ΡΠΊΠ°βββΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½ΠΎΠ²ΡΡ
ΠΈΠ΄Π΅ΠΉ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΠ΅ Π½Π΅ Π·Π°ΡΡΠΎΠ½ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΠΊΡ master
Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π²Ρ ΡΠ°ΠΌΠΈ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π·Π°Ρ
ΠΎΡΠΈΡΠ΅. Π’ΠΎ Π΅ΡΡΡ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎ ΡΠ»ΠΈΠ²Π°Π΅ΡΠ΅ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ master
.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ Π²Π΅ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ,βββΡΡΠΎ master
. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Ρ
ΠΎΡΠΈΡΠ΅ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠ°Π·Ρ, ΡΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΠ΅ ΠΈΡ
ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ»ΠΈΠ²Π°ΠΉΡΠ΅ Ρ master
.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ Π²Π½Π΅ΡΡΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π»ΠΈΠ±ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΠΎ-ΡΠΎ, Π½Π΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Ρ master
, ΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ. Π‘Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π² Π»ΡΠ±ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
ΠΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π²Π΅ΡΠΊΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ new_feature
(Π½ΠΎΠ²Π°Ρ ΠΎΠΏΡΠΈΡ) ΠΈ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ Π² Π½Π΅Π΅ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅:
git checkout -b new_feature
ΠΠ½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠΎΠΊ Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΌΠΈ Π½Π°Π·Π²Π°Π½ΠΈΡΠΌΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ»ΠΎΡΡ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ. ΠΠ°ΠΆΠ΄ΡΠΉ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ½Π°Π±ΠΆΠ°ΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΌ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΌ ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠΊΠ°ΠΌΠΈ:
git checkout
ΠΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Β«Π·Π°Π³Π»ΡΠ½ΡΡΡΒ» Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π΅ ΠΎΡΠΊΡΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² Π²Π΅ΡΠΊΡ master
:
git checkout master
ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ Π²Π΅ΡΠΊΡ new_feature
:
git checkout new_feature
ΠΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠΊΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΠΈΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ master
, ΡΡΠΎΠ±Ρ ΠΈΡ
ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
git merge new_feature
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±Π΅ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΠ΅ new_feature
ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΈΡ
Π² Π²Π΅ΡΠΊΡ master
.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, new_feature
) Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Β«ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉΒ»:
git push β set-upstream origin new_feature
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Π²Π½Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π°Ρ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ, ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΡΠΈΠ½ΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Pull request). Π Pull request Π²Π°ΡΠΈ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ ΡΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΡΠ΄ΠΈΡΡ ΠΈΡ . Pull request ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΠΎ Π»ΡΠ±ΠΎΠΌΡ ΠΏΠΎΠ²ΠΎΠ΄Ρ, Π±ΡΠ΄Ρ ΡΠΎ Π²Π½Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠ±Π° ΠΎ ΠΏΠΎΠΌΠΎΡΠΈ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠΌΠΌΠΌΠΌβ¦ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π·Β ΡΠ°ΠΉΡ?
ΠΠ°, Π²ΡΠ΅ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Ρ ΡΠ°ΠΉΡΠ° GitHub.
Pull request ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠΎ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΡΠ°Π½Π΅Π΅ ΠΏΡΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ README-ΡΠ°ΠΉΠ»Π°. ΠΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠ½ΠΎ!
Π Π΅ΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΡΠ°ΠΉΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ Π²ΡΠΏΠ°Π΄Π°ΡΡΠ΅ΠΌΡ ΠΌΠ΅Π½Ρ Π² Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΠΊΡΠ°Π½Π°. Π’Π°ΠΌ Π΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Branch: master. ΠΠ°Π΄Π°ΠΉΡΠ΅ ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Create branch (Π»ΠΈΠ±ΠΎ Π½Π°ΠΆΠΌΠΈΡΠ΅ Enter
Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ΅). Π’Π΅ΠΏΠ΅ΡΡ Ρ Π²Π°Ρ Π΅ΡΡΡ Π΄Π²Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ Π²Π΅ΡΠΊΠΈ. ΠΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡ
Π΄ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ Ρ master
.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅, ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π°ΡΡΠΎΠ½ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΅Π΅.
ΠΡΠ»ΠΈ Π²Π°Ρ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Ρ ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ»ΠΈΡΡ ΠΈΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Pull request. ΠΡΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· Pull request ΠΈ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈΡ ΠΈΠ»ΠΈ ΡΠ»ΠΈΡΡ ΠΈΡ Ρ Π½ΡΠΆΠ½ΡΠΌΠΈ Π²Π΅ΡΠΊΠ°ΠΌΠΈ.
Pull request ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΡΡΡΡ ΡΡΠ°Π·Ρ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ Ρ ΡΠ°ΠΉΡΠ° GitHub. ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Π²Π½Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΡ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ»ΠΈΡΡ ΠΈΡ
Ρ master
. Π’ΠΎΠ³Π΄Π°:
- ΠΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Pull request Π²Π²Π΅ΡΡ Ρ ΡΠΊΡΠ°Π½Π°.
- ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ New pull request.
- ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΠΎΠ»Π΅ Example Comparisons. ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ Ρ
ΠΎΡΠΈΡΠ΅ ΡΡΠ°Π²Π½ΠΈΡΡ Ρ
master
. - ΠΡΠ΅ ΡΠ°Π· ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ Π³ΠΎΡΠΎΠ²Ρ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
- ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π±ΠΎΠ»ΡΡΡΡ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ New pull request. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π°ΠΏΡΠΎΡΠ°, Π΄Π°ΠΉΡΠ΅ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Create pull request.
ΠΠΎΠ²ΡΠΉ PullΒ request
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ pullΒ request
ΠΡΠ»ΠΈ ΡΡΠΎ Π²Π°Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΡΠΎ ΡΠ»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ master
ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ΅Π· Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Merge pull request. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Confirm merge. Π‘ΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π½ΡΠΆΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Ρ master
Π½Π°ΠΆΠΌΠΈΡΠ΅ Delete branch Π² ΡΠΈΠΎΠ»Π΅ΡΠΎΠ²ΠΎΠΌ Π±ΠΎΠΊΡΠ΅.
ΠΡΠ»ΠΈ Π²Ρ ΡΡΠ°ΡΡΠ²ΡΠ΅ΡΠ΅ Π² ΡΡΠΆΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, ΡΠΎ Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ (ΠΈΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΡ) ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡ. Π₯ΠΎΡΠΈΡΠ΅ Π²Π½Π΅ΡΡΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ? Π‘Π΅ΠΉΡΠ°ΡβββΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. Π‘ΡΠ°Π·Ρ ΠΏΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΌΠΎΠ³ΡΡ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ· Π²Π΅ΡΠΊΠΈ ΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ Ρ master
. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΡΠ°Π·Π²Π΅ΡΡΠΊΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈΡ
Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅.
ΠΠΎΡΠ»Π΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Ρ Π²Π΅ΡΠΊΠΎΠΉ master
. Π Pull request Ρ
ΡΠ°Π½ΠΈΡΡΡ Π·Π°ΠΏΠΈΡΡ ΠΎ Π²Π°ΡΠΈΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ
. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ Π²ΡΠ΅Π³Π΄Π° ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΡΡΡΡ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ ΠΈ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°Π½Ρ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ.
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΒ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΠΌΠΎΠΉ ΡΠ²Π΅ΠΆΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ GitHub ΡΠ΅ΡΠ΅Π· git pull
. ΠΠ»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git pull
ΠΠ»Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π²Π΅ΡΠΊΠΈ Ρ Π²Π°ΡΠ΅ΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ:
git merge <ΠΈΠΌΡ_Π²Π΅ΡΠΊΠΈ>
Git ΡΡΠ°ΡΠ°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ»ΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠΠ½ΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ. ΠΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ, ΡΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΡΠ»ΠΈΡΠ½ΠΈΡ Π²ΡΡΡΠ½ΡΡ. ΠΠΎΡΠ»Π΅ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ Π½ΡΠΆΠ½ΡΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΡΠΌΠ΅ΡΡΡΠ΅ ΠΈΡ
Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Β«ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΡ
Β» ΠΈΠ»ΠΈ Β«ΡΠ»ΠΈΡΡΡ
Β» ΡΠ΅ΡΠ΅Π· git add <ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°>
. ΠΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΠΎ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅:
git diff <ΠΈΡΡ ΠΎΠ΄Π½Π°Ρ_Π²Π΅ΡΠΊΠ°> <ΡΠ΅Π»Π΅Π²Π°Ρ_Π²Π΅ΡΠΊΠ° >
ΠΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π²Π΅ΡΠΊΠ΅ master
ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ΅Π·:
git checkout master
ΠΠΎΡΠ»Π΅ ΡΠ»ΠΈΡΠ½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΠ΅ ΡΡΡ Π²Π΅ΡΠΊΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git branch -d new_feature
ΠΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π½Π΅ ΡΠ²ΠΈΠ΄ΡΡ Π²Π°ΡΡ Π²Π΅ΡΠΊΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½Π° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π° Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π²Π΅ΡΠΊΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git push origin <Π²Π΅ΡΠΊΠ°>
ΠΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΏΠΎΠ»Π΅Π·Π½ΡΡ Β ΠΊΠΎΠΌΠ°Π½Π΄
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π°, Π²ΠΎΡ Π²Π°ΠΌ ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ GitHub, Π³Π΄Π΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π²ΡΠ΅ ΡΠ°ΠΌΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ Git-ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΡΠΎΡΠΌΠΎΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
git log
ΠΡΠΎΡΠΌΠΎΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:
git log β author=<ΠΈΠΌΡ>
ΠΡΠΎΡΠΌΠΎΡΡ Π½Π΅ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:
git diff
Π‘Π»ΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ? ΠΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΈΠ· 21 ΡΠ°ΠΌΠΎΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git help
ΠΠΈΠ±ΠΎ ΠΏΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°Π·ΡΡΡΠ½Π΅Π½ΠΈΡ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ clone
:
git help clone
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΡΠ΅Π½ΠΈΡΡΠ΅ΠΌΡΡ, Π° Π·Π°ΠΎΠ΄Π½ΠΎ ΠΈ ΠΏΠΎΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΠ΅ΠΌ Π²ΡΠ΅Ρ , ΠΊΡΠΎ Π·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡ Ρ Git ΠΈ GitHub. ΠΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π‘ΡΠ΅Π½Ρ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠ΅ΠΉ GitHub Wall, Π³Π΄Π΅ ΠΈΠ·ΡΡΠ°ΡΡΠΈΠ΅ Git ΠΈ GitHub ΡΠΌΠΎΠ³ΡΡ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠΈΡ ΠΏΠ΅ΡΠ²ΡΡ open-source ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ .
ΠΠ° ΡΠ²ΠΎΠ΅ΠΉ Π‘ΡΠ΅Π½Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π»ΡΠ±ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ. ΠΠ»Π°Π²Π½ΠΎΠ΅βββΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΎ Π²Π΅ΠΆΠ»ΠΈΠ²ΠΎΡΡΠΈ ΠΈ Π΄ΠΎΠ±ΡΠΎΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΡΡΠ°Π²ΡΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡβ¦ Π΄Π° ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ, ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π·ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ ΠΈΠ· README-ΡΠ°ΠΉΠ»Π° (ΡΡΡΠ»ΠΊΡ ΡΠΌ. Π½ΠΈΠΆΠ΅).
git clone https://github.com/bonn0062/github_welcome_wall.git
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ°ΠΉΠ»
welcome_wall.md
Ρ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΌΠΎΡΠΈΠ²ΠΈΡΡΡΡΠ΅ΠΉ ΡΠΈΡΠ°ΡΠΎΠΉ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π° ΡΠ°ΠΉΡΠ΅ GitHub. ΠΠΎ ΠΊΡΠ΄Π° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π΅Π΅ ΡΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, ΠΎΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» Π² Π»ΡΠ±ΠΈΠΌΠΎΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈ Π²ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΌ Π½ΡΠΆΠ½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ. Π’Π°ΠΊ Π·Π½Π°Π½ΠΈΡ Π»ΡΡΡΠ΅ ΡΡΠ²ΠΎΡΡΡΡ. - Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Pull request.
- ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Pull request.
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡβββΠ²Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠΏΡΠ°Π²ΠΈΠ»ΠΈΡΡ!
<figure><iframe src="/media/645604587ba05da2b5095a0cb2cf64e5" allowfullscreen=""></iframe></figure>
Π§ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΊΠΆΠ΅:
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Anne Bonner: Getting started with Git and GitHub: the complete beginnerβs guide
ΠΠ°ΠΊ ΠΌΠ½Π΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π² Git?
Git ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΈ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΌΠΎΡΠ½ΠΎΡΡΡ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ — ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΠΌΡΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Git!
ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π²Π΅ΡΠΎΠΊ Π² Git. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ ΠΏΠΎ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ.
ΠΠ°ΠΊ ΠΌΠ½Π΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ HEAD ?
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΡ Π½Π° Π²Π°ΡΠ΅ΠΉ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅ (HEAD), ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Β«git branchΒ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°:
$ git branch <Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ°>
ΠΠ°ΠΊ ΠΌΠ½Π΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ ?
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅, ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΈΠΌΡ ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠΏΡΠ°Π²Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ:
$ git branch <Π½ΠΎΠ²Π°Ρ-Π²Π΅ΡΠΊΠ°> <Π±Π°Π·ΠΎΠ²Π°Ρ-Π²Π΅ΡΠΊΠ°>
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ Tower Git, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΎΠΊ (Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ ΡΠ»ΠΈΡΠ½ΠΈΡ, Π²ΡΠ±ΠΎΡΠ° Π²ΠΈΡΠ½ΠΈ ΠΈ Ρ. Π.):
ΠΠ°ΠΊ ΠΌΠ½Π΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ?
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ (Π° Π½Π΅ Π²Π΅ΡΠΊΠΈ), Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Ρ Π΅Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠΏΡΠ°Π²Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ:
$ git branch <Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ°> f71ac24d
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅Π³Π° ?
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅Π³Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΆΠ΅ Π΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
$ git branch <Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ°> v1.2
ΠΠ°ΠΊ ΠΌΠ½Π΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ?
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ Π²Π΅ΡΠΊΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠ½ΠΎΠ²Ρ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ Π½ΠΎΠ²ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Β«—trackΒ»:
$ git branch --track <Π½ΠΎΠ²Π°Ρ-Π²Π΅ΡΠΊΠ°> origin / <Π±Π°Π·ΠΎΠ²Π°Ρ-Π²Π΅ΡΠΊΠ°>
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ «checkout». ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π½Π°Π·Π²Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠ°ΠΊ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠΌΡ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ:
$ git checkout --track origin /
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Π² Π² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ?
ΠΠΎΡΠ°Π±ΠΎΡΠ°Π² Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°Π΄ Π½ΠΎΠ²ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Π΅Π΅ Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π΅Ρ ΡΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
$ git push -u origin <Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ-Π²Π΅ΡΠΊΠ°>
Π€Π»Π°Π³ Β«-uΒ» ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Git ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Β«ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡΠ΅Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅Β», ΡΡΠΎ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΡΠΈΡ ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅.
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° «git branch»?
ΠΠΎΠΌΠ°Π½Π΄Π° «git branch» ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π·Π°Π΄Π°Ρ:
- ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ ΠΌΠ΅ΡΡΠ½ΡΡ ΡΠΈΠ»ΠΈΠ°Π»ΠΎΠ²
- ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠΈΠ»ΠΈΠ°Π»ΠΎΠ²
- ΡΠΎ ΡΠΏΠΈΡΠΊΠΎΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΈ / ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠΈΠ»ΠΈΠ°Π»ΠΎΠ²
- ΡΠΎ ΡΠΏΠΈΡΠΊΠΎΠΌ Π²Π΅ΡΠ²Π΅ΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΅ΡΠ΅ Π½Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ
Π£Π·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅
Β«Git create branchΒ» — ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Π² git [Π£ΡΠ΅Π±Π½ΠΈΠΊ]
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Π² Git
β
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ` git ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ my-branch`.Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ, ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ ΠΈ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π²Ρ ΠΎΡΡΠ°Π΅ΡΠ΅ΡΡ Ρ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git checkout -b ΠΌΠΎΡ Π²Π΅ΡΠΊΠ°
β
ΠΡΠΎ ΡΠ°ΠΌΡΠΉ Π±ΡΡΡΡΡΠΉ ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π½ΠΎ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π·Π³Π»ΡΠ΄ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΌΠ΅Π½Π΅Π΅ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½Π° ΠΈ Π΅Π΅ Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΉΠΌΠ΅ΡΠ΅, ΠΊΠ°ΠΊ Π²Π΅ΡΠΊΠΈ git ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎΠ΄ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΡΡ, Π²Ρ ΠΏΠΎΠΉΠΌΠ΅ΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠΎ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΠΈ, Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΡΡΡΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π²Π΅ΡΠΊΡ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π²Π΅ΡΠΊΠΈ Git, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½ΠΈ ΡΠ΅ΡΠΈΠ»ΠΈ Π²ΡΡΠ°Π·ΠΈΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΡΠΎΠ»Ρ Π½Π΅ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
β
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΠ»ΠΈΠ°Π»?
β
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ³Π»ΡΠ±ΠΈΠΌΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Git ΠΏΠΎ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ. ΠΠΎΡ ΡΡΠΎ ΠΎΠ½ΠΈ Π³ΠΎΠ²ΠΎΡΡΡ:
ΠΠ΅ΡΠ²Ρ Π² Git — ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π»Π΅Π³ΠΊΠΈΠΉ ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° [ΡΠΈΠΊΡΠ°ΡΠΈΡ]. ΠΠΌΡ Π²Π΅ΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² Git — master. ΠΠΎΠ³Π΄Π° Π²Ρ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ, Π²Π°ΠΌ Π΄Π°Π΅ΡΡΡ Π³Π»Π°Π²Π½Π°Ρ Π²Π΅ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠ΄Π΅Π»Π°Π½Π½ΡΡ Π²Π°ΠΌΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡ.ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΎΠ½ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΎΠ΄Π²ΠΈΠ³Π°Π΅ΡΡΡ Π²ΠΏΠ΅ΡΠ΅Π΄.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Ρ ΡΡΠΈΠΌ. ΠΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ ΠΎΠΆΠΈ Π½Π° ΠΌΠ΅Π½Ρ, Π²Ρ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ»ΠΈ Π²Π΅ΡΠΊΡ ΡΠΊΠΎΡΠ΅Π΅ ΠΊΠ°ΠΊ ΠΏΠ°ΠΏΠΊΡ, ΡΠ΅ΠΌ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ Π΅ΡΠ΅, Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠΌΠΈ Π² Π½Π΅ΠΉ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ. ΠΡΠ»ΠΈ Π±Ρ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠ°ΠΊ, ΡΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΡΠ°Π·ΡΠΌΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈ ΠΏΠ°ΠΏΠΊΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«ΡΠΎΠ·Π΄Π°ΡΡΒ».
ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Π΅ΡΠΊΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎ Β«ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌΒ» ΠΈΠ»ΠΈ ΡΡΡΠ»ΠΊΠΎΠΉ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΡΠΎ ΡΡΠ° ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.ΠΠ΅ΡΠ²ΠΈ, ΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ, ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡ, ΡΡΠΎ Git Ρ ΡΠ°Π½ΠΈΡ ΡΠ²ΠΎΠΈ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΠ»ΠΎΡΠΊΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠ΅, Π° Π½Π΅ Π² Π²ΠΈΠ΄Π΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, ΡΡΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²Π΅ΡΠ½ΠΎ! Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΡΡΠ΄ΠΎΠΌ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅. ΠΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ — Ρ Π²Π°Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΠΊΠΈ Π²Π½ΡΡΡΠΈ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΈ. Π―ΡΠ½ΠΎ, ΡΡΠΎ ΠΌΡ Π·Π΄Π΅ΡΡ Π½Π΅ ΠΈΠΌΠ΅Π΅ΠΌ Π΄Π΅Π»ΠΎ Ρ ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ.
Π’ΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ: ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ? Π’ΠΎ Π΅ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π² Π²Π΅ΡΠΊΠ΅ ΡΠΎΠ²Π΅ΡΡΠ°Π΅Ρ Π΄ΡΡΠ³ΠΎΠΉ, Π΅ΡΠ»ΠΈ Π²Π΅ΡΠΊΠ° — ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ΄Π½Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ?
ΠΠΏΡΡΡ ΠΆΠ΅, Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Git Π΅ΡΡΡ ΠΎΡΠ²Π΅Ρ.
ΠΠΎΠ³Π΄Π° Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΡ Π² Git, Git ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ½ΠΈΠΌΠΎΠΊ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ … ΠΈ Π½ΠΎΠ»Ρ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΈΠ»ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΏΡΡΠΌΡΠΌΠΈ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΠΌΠΈ ΡΡΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ: Π½ΠΎΠ»Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ, ΠΎΠ΄ΠΈΠ½ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π΄Π»Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ»ΠΈΡΠ½ΠΈΡ Π΄Π²ΡΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π²Π΅ΡΠ²Π΅ΠΉ.
ΠΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠΊΠΈ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡΡ, Π½ΠΎ ΠΈ ΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ ΠΌΠΎΠ³ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ. ΠΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ `git log` ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΡΡ ΡΡΠΈΠ»ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π½Π° GitHub, ΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΠΈΡ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ.
Π’ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ Π»ΡΠ±ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊ Π²Π΅ΡΠΊΠ΅: Git ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²Π΅ΡΠ²Ρ, Π° Π·Π°ΡΠ΅ΠΌ Π½Π°Ρ ΠΎΠ΄ΠΈΡ Π²ΡΠ΅Ρ Π΅Π΅ ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ, Π³Π»ΡΠ΄Ρ Π½Π° ΡΡΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎ Π²ΡΠ΅ΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² Π²ΠΌΠ΅ΡΡΠ΅.
β
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ?
β
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Ρ ΡΠ°Π½ΡΡΡΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ, ΠΏΡΠΈΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠ·ΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ checkout, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΠΎΠ»ΡΠ΅Π±ΡΡΠ²ΠΎ ΡΡΠΎΠ³ΠΎ ΡΡΠ»ΡΠΊΠ°.ΠΠΎΡ ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ:
git checkout ΠΌΠΎΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ°Ρ Π²Π΅ΡΠΊΠ°
β
ΠΠΎΠΌΠ°Π½Π΄Π° `checkout` Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΡΡΡΠ»Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½Π°Ρ Π΅ΠΉ Π²Π΅ΡΠ²Ρ, Π·Π°ΡΠ΅ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΆΠ΅ΡΡΠΊΠΎΠΌ Π΄ΠΈΡΠΊΠ΅ (ΡΠ°ΠΉΠ»Ρ Π² Π²Π°ΡΠ΅ΠΌΒ« ΡΠ°Π±ΠΎΡΠ΅ΠΌ Π΄Π΅ΡΠ΅Π²Π΅ Β»), ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΡΠ°ΠΉΠ»Π°ΠΌ, Ρ ΡΠ°Π½ΡΡΠΈΠΌΡΡ Π² ΡΡΠΎΠΌ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ.
ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅Ρ Π²Π°Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ HEAD Π½Π° ΡΡΡ Π²Π΅ΡΠΊΡ, ΡΠ°ΠΊ ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΡΡΠ° ΡΠΈΠΊΡΠ°ΡΠΈΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΡ Π² ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅.
ΠΠ±ΡΡΠ½ΠΎ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π²Π΅ΡΠ²Π΅ΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ ΡΠ»Π°Π³ Β«-bΒ», ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Ρ ΡΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ HEAD, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½Π° ΡΡΡ Π²Π΅ΡΠΊΡ.
ΠΡΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄Π°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΡΡΠΎ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ Π΄Π²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ:
git Π²Π΅ΡΠΊΠ° ΠΈΠΌΡ ΠΌΠΎΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ
git checkout ΠΈΠΌΡ-Π²Π΅ΡΠΊΠΈ
β
ΠΡΠΏΡΠ°Π²ΠΊΠ° Π²Π΅ΡΠΊΠΈ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΎΡΠΊΡ
Π’Π΅ΠΏΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΡ Π²Π½ΠΎΠ²Ρ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π²Π΅ΡΠΊΡ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΄ΡΡΠ³ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git push —set-upstream origin my-branch-name
β
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ, ΡΡΠΎ Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΌΠΎΠ³ Π²ΠΎΡΡΠΎΠ·Π΄Π°ΡΡ ΡΡ ΠΆΠ΅ Π²Π΅ΡΠΊΡ.
Π€Π»Π°Π³ —set-upstream ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠ²ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ ΡΡΠΎΠΉ Π²Π΅ΡΠ²ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΡΡΠΎ ΡΡΠ° ΡΠ²ΡΠ·Ρ Π½Π΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Git — ΡΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΠ²Ρ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ Π²Π΅ΡΠ²ΡΡ Ρ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π΄ΡΡΠ³ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅.
β
ΠΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ Π²Π΅ΡΠΊΠ°ΠΌ
β
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π°ΠΌΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²Π΅ΡΠΎΠΊ, ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄ΠΎΠ²ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ — Π² ΠΎΠ±ΡΠ΅ΠΌ, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΠΉΡΠ΅ΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«git flowΒ» Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π°ΡΠΈΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ.ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΠ΅ΡΡ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌ Π½Π°Π΄ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, Π΅Π³ΠΎ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΡΠΎΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.
Git flow — ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΡ Π²Π΅ΡΠ²Π΅ΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²Π°ΡΡ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Ρ Π² Β«ΡΠΈΡΡΠΎΠΌΒ» ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΡΠ°ΠΊ ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ Π·Π°ΠΏΡΠΎΡΡ Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²ΡΠΏΡΡΠΊΠΈ ΠΏΠ»Π°Π²Π½ΠΎ ΠΈ Π±Π΅Π· ΠΎΡΠΈΠ±ΠΎΠΊ. Π ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΡΠΈΡΠ°ΠΉΡΠ΅ Π² Π±Π»ΠΎΠ³Π΅ Π΅Π³ΠΎ Π°Π²ΡΠΎΡΠ° ΠΠΈΠ½ΡΠ΅Π½ΡΠ° ΠΡΠΈΡΡΠ΅Π½Π°.
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π΅ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ — ΠΎΠ½ΠΈ Π²ΡΠ΅Π³Π΄Π° Π΅ΡΡΡ — Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠΆΠ΅ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Ρ Π² ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅, ΠΏΡΠΎΡΡΠΈΡΠ΅ ΡΡΠΎΡ ΠΎΡΠ²Π΅Ρ ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠ΅ΠΊΠ°.
Π£Π΄Π°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ!
β
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git — devconnected
ΠΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, Π²Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Git ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
ΠΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ, ΡΠΎΠ·Π΄Π°Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git.
Π²Π΅ΡΠΎΠΊ Git ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Git ΠΎΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ Π²Π°ΡΠ΅ΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠΈ Git.
ΠΡΠ»ΠΈ Π²Π°ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΡΡΠΎΡΠΈΡ Git ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅ , Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ Git , ΡΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΡ ΠΏΠΎΠ·ΠΆΠ΅.
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git.
Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ
Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git — ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git checkoutΒ» Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Β«-bΒ» Π΄Π»Ρ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ. ΠΠ°Π»Π΅Π΅ Π²Π°ΠΌ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ.
$ git checkout -b <ΠΈΠΌΡ-Π²Π΅ΡΠΊΠΈ>
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«featureΒ»
.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Ρ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git checkoutΒ» Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Β«-bΒ» ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ Β«featureΒ» Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ΠΈ Π²Π΅ΡΠΊΠΈ.
$ git checkout -b ΡΡΠ½ΠΊΡΠΈΡ
ΠΠ΅ΡΠ΅ΡΠ΅Π» Π½Π° Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π²Π΅ΡΠΊΠΈ
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git checkoutΒ», Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΡΠ΅ΡΡ Π½Π° ΡΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ.
ΠΠΎ ΡΡΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠ²Ρ Git Π±Π΅Π· Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ?
Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git Π±Π΅Π· ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git, Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡ Π½Π° ΡΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git branchΒ» ΠΈ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠΌΡ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ Π²Π΅ΡΠΊΠΈ Git.
$ git branch
ΠΠΎΠ·ΠΆΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ Β«git checkoutΒ».
$ git checkout <ΠΈΠΌΡ_ΠΎΡΡΠ°ΡΠ»ΠΈ>
ΠΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«featureΒ».
$ ΡΡΠ½ΠΊΡΠΈΡ Π²Π΅ΡΠΊΠΈ git
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΊΠΈ, Π·Π°ΠΏΡΡΡΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git branchΒ» Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Β«-aΒ» Π΄Π»Ρ Π²ΡΠ΅Ρ Π²Π΅ΡΠ²Π΅ΠΉ.
$ git branch -a
ΠΡΠ»ΠΈΡΠ½ΠΎ, Π²Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ»ΠΈΡΡ Π½Π° Π½Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ checkout.
Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΠΊΠΎΠΌΠΌΠΈΡΠ°
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ ΠΌΡ ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΡΠΈΠΊΡΠ°ΡΠΈΠΈ HEAD ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΈ.
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² Π²Π°ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ Git.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git checkoutΒ» Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Β«-bΒ» ΠΈ ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½Π° Π²Π΅ΡΠΊΠ°.
$ git checkout -b <ΠΈΠΌΡ_ΠΎΡΡΠ°ΡΠ»ΠΈ>
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git branchΒ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π²Π΅ΡΠΊΠΈ ΠΈ SHA ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π΄Π»Ρ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ.
$ git branch <ΠΈΠΌΡ_ΠΎΡΠ²Π΅ΡΠΊΠΈ>
ΠΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠ²Ρ Git ΠΈΠ· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΠΈΡΡΠΎΡΠΈΠΈ Git.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ SHA ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΈΠ· Π²Π°ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Β«git logΒ» Ρ ΠΎΠΏΡΠΈΠ΅ΠΉ Β«βonelineΒ».
$ git log --oneline --graph
* 9127753 (HEAD -> master) ΠΠ°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ 3
* f2fcb99 ΠΠΎΠΌΠΌΠΈΡ 2
* cab6e1b (origin / master) master: Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡ
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· Π²ΡΠΎΡΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ (f2fcb99), Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
$ git checkout -b ΡΡΠ½ΠΊΡΠΈΡ f2fcb99
ΠΠ΅ΡΠ΅ΡΠ΅Π» Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«ΡΡΠ½ΠΊΡΠΈΡΒ»
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git logΒ», Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΡΠΎ Π²Π°ΡΠ° Π²Π΅ΡΠΊΠ° Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²ΡΠΎΡΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ Π²Π°ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ.
$ git log --oneline --graph
* f2fcb99 (HEAD -> feature) Commit 2
* cab6e1b (origin / master) master: Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠΊΡΠ°ΡΠΈΡ
ΠΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ, Π²Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ°!
Π‘ΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΡΠ΅Π³Π°
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°Ρ ΠΌΡ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΡΡΠΎ ΡΠ΅Π³ΠΈ Git Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ: ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.
ΠΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ Git ΠΈΠ· ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠ΅Π³ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π²Π΅ΡΡΠΌΠ° ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΡΠ΅Π³Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git checkoutΒ» Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Β«-bΒ» ΠΈ ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΡ ΡΠ΅Π³Π° Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ.
$ git checkout -b <ΠΈΠΌΡ_ΠΎΡΡΠ°ΡΠ»ΠΈ> <ΠΈΠΌΡ_ ΡΠ΅Π³Π°>
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Β«Π²Π΅ΡΠ²Ρ gitΒ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠ΅Π³Π°.
$ git branch <ΠΈΠΌΡ_ΠΎΡΠ²Π΅ΡΠΊΠΈ> <ΠΈΠΌΡ_ ΡΠ΅Π³Π°>
ΠΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git ΠΈΠ· ΡΠ΅Π³Π° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«v1.0 Β»Π² Π²Π°ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ.
Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ΅Π³ΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git tagΒ». Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git logΒ», ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠ΅Π³, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠ΅ΠΉ.
$ git tag
ΠΠ΅ΡΡΠΈΡ 1.0
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΡΠ²ΠΎΠΉ ΡΠ΅Π³, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ· Π½Π΅Π³ΠΎ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git checkoutΒ».
$ git checkout -b ΡΡΠ½ΠΊΡΠΈΡ v1.0
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ²ΠΎΡ ΠΈΡΡΠΎΡΠΈΡ Git, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π²Π°ΡΠ° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° ΠΈΠ· ΡΠ΅Π³Π°.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Β«Π²Π΅ΡΠ²Ρ gitΒ» Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠΈ.
$ ΡΡΠ½ΠΊΡΠΈΡ Π²Π΅ΡΠΊΠΈ git v1.0
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΎ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΡΡ ΠΈΠΌΠ΅Π½Π°Ρ
ΠΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Git (Π±ΡΠ΄Ρ ΡΠΎ Π²Π΅ΡΠΊΠΈ, ΡΠ΅Π³ΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡΡ), Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Ρ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ
ΡΠ°ΡΠ°Π»ΡΠ½ΡΠΉ: Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°: <ΠΎΠ±ΡΠ΅ΠΊΡ>
Π’Π°ΠΊ ΠΏΠΎΡΠ΅ΠΌΡ ΠΆΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΡΠ° ΠΎΡΠΈΠ±ΠΊΠ°?
ΠΡΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° Π΄Π²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅ΡΠ²Ρ ΠΈ ΡΠ΅Π³.
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², Git Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ»ΠΈΡΠΈΡΡ ΠΈΡ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Ρ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«checkoutΒ».
ΠΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΡΠ΅Π³Π° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«v1.0Β», Π½ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· Π²Π°ΡΠΈΡ Π²Π΅ΡΠ²Π΅ΠΉ ΡΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΈΠΌΡ Β«v1.0Β», Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΡΡ ΠΎΡΠΈΠ±ΠΊΡ
$ git checkout -b ΡΡΠ½ΠΊΡΠΈΡ v1.0
ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: refname 'v1.0' Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ.
ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: refname 'v1.0 'Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ.
ΡΠ°ΡΠ°Π»ΡΠ½ΡΠΉ: Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°: 'v1.0'.
Π§ΡΠΎΠ±Ρ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π²Π°ΡΠΈΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π³, Π° Π½Π΅ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ.
ΠΠ»Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ refs ΠΊ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ
$ git checkout -b ΡΡΠ½ΠΊΡΠΈΡ refs / tags / v1.0
ΠΠ΅ΡΠ΅ΡΠ΅Π» Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ 'ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ'
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Π²Ρ ΡΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²Π΅ΡΠΊΠΈ Git Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git checkoutΒ».
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ·Π½Π°Π»ΠΈ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«git branchΒ», Π΅ΡΠ»ΠΈ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π²Ρ Π²ΠΈΠ΄Π΅Π»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ: ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠ²Π΅ΠΉ ΠΈΠ· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΈΠ»ΠΈ ΠΈΠ· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠ΅Π³ΠΎΠ² Π² Π²Π°ΡΠ΅ΠΉ ΠΈΡΡΠΎΡΠΈΠΈ Git.
ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΎ Git, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π½Π°ΡΠΈΠΌΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°ΠΌΠΈ:
ΠΡΠ»ΠΈ Π²Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ Git ΠΈΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ΅Π»ΡΠΉ ΡΠ°Π·Π΄Π΅Π», ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π½ΡΠΉ ΡΡΠΎΠΌΡ, Π½Π° Π²Π΅Π±-ΡΠ°ΠΉΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ Π½ΠΈΠΌ!
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git?
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π», Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch , Π·Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
ΠΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
ΡΡΠ½ΠΊΡΠΈΡ Π²Π΅ΡΠΊΠΈ git-A
ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Π½ΠΎΠΉ ΡΡΡΠ»ΠΊΠΈ.
ΠΠ°ΠΊ Π²Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ Π²Π΅ΡΠΎΠΊ Git?
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΌΠΎΡΡ Π»ΡΡΡΠ΅Π³ΠΎ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π΄Π»Ρ Git, GitKraken, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π²Π΅ΡΠΊΠΈ Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git branch , ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²Π°ΡΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΎΠΊ ΠΈ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π²Π°Ρ Π½ΠΎΠ²ΡΠΉ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ Π²Π΅ΡΠΊΠ°.
ΠΠ°ΠΊ ΠΎΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git?
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π²Π΅ΡΠΊΡ Git, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git checkout , Π·Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΡ Π²Π΅ΡΠΊΠΈ, Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΡΠΎΠΉ Π²Π΅ΡΠΊΠΈ.
ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ git-A
ΠΠ°ΠΊ Π²Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΠ΅ Π²Π΅ΡΠΊΡ Git?
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΎΡΠ²ΠΎΠΈΡΠ΅ΡΡ Ρ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Git, Π²Π°ΠΌ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΏΠΎΠ½ΡΠ°Π²ΠΈΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π΄Π²Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ Π²Π΅ΡΠΊΠΈ Π² Git Ρ ΠΏΠΎΠΌΠΎΡΡΡ:
git checkout -b <Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ>
ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈ ΡΡΠ°Π·Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡ Π²Π΅ΡΠΊΡ.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠΊΡ Π² GitKraken?
ΠΠ»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ: Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ GitKraken Git Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ ΡΡΠ°Π½Π΅Ρ Π΅ΡΠ΅ ΠΏΡΠΎΡΠ΅.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²Π΅ΡΠ²ΠΈ Π² Git — Linux ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°
Git — ΠΎΠ΄Π½Π° ΠΈΠ· Π»ΡΡΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.ΠΠ½ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ ΠΊΠΎΠ΄Π°ΠΌΠΈ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎΠ± ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ Git, Π²Π΅ΡΠΊΠΈ Git. ΠΡΠ°ΠΊ, ΠΏΡΠΈΡΡΡΠΏΠΈΠΌ.
Π€ΠΈΠ»ΠΈΠ°Π»ΠΎΠ² Git:
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΡΠ²ΠΎΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. ΠΠ½Π΅Π·Π°ΠΏΠ½ΠΎ Ρ Π²Π°Ρ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΠΈΠ΄Π΅Ρ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ. ΠΠΎ Π²Ρ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΡΠΎ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΠ΅ Π±ΠΎΠΉΡΠ΅ΡΡ, Π²Π΅ΡΠΊΠ° Git ΡΠΆΠ΅ Π·Π΄Π΅ΡΡ!
Π§ΡΠΎ ΠΆ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, Π° Π·Π°ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ΄Π΅ΠΈ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠ΅.ΠΡΠ»ΠΈ Π²Π°ΠΌ ΡΡΠΎ Π½ΡΠ°Π²ΠΈΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π΅Π³ΠΎ Ρ Π²Π΅ΡΠΊΠΎΠΉ master . ΠΡΠ»ΠΈ ΠΎΠ½ Π²Π°ΠΌ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ / ΡΠ΄Π°Π»ΠΈΡΡ Π΅Π³ΠΎ. ΠΡΠΎ Π½Π΅ ΠΏΠΎΠ²Π»ΠΈΡΠ΅Ρ Π½Π° Π²Π°ΡΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Π΅ΡΠΊΠ° master ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π΅ΡΠ²ΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² Git. ΠΠ½ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git.
Π ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ Ρ ΠΏΠΎΠΊΠ°ΠΆΡ Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²Π΅ΡΠΊΠΈ Git, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π΅ΡΠΊΠΈ Git ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π²Π΅ΡΠΊΠΈ Git. ΠΡΠ°ΠΊ, Π²ΠΏΠ΅ΡΠ΅Π΄.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Git Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ:
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΌΠΎΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² GitHub Π½Π° ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ. ΠΠΎΠ·ΠΆΠ΅ Ρ ΡΠ΄Π΅Π»Π°Ρ Π΄ΡΡΠ³ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π² ΡΡΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅, Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Git.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ GitHub Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Ρ ΠΏΠΎΠΊΠ°Π·Π°Π» Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ.
$ git clone https://github.com/shovon8/angular-hero-api
ΠΠΎΡΠ»Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Github ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π‘ΠΏΠΈΡΠΎΠΊ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π²Π΅ΡΠΎΠΊ Git:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π²ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Git, ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, Π² ΠΌΠΎΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° Π²Π΅ΡΠΊΠ° master .ΠΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ Π²Π΅ΡΠΎΠΊ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π·Π΄Π΅ΡΡ. ΠΠ΅ΡΠ΅Π΄ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΡΡ ΡΡΠΎΠΈΡ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠ° (*). ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΏΠΎ ΡΠ²Π΅ΡΡ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ Π²Π΅ΡΠΎΠΊ. ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΏΠ΅ΡΠ΅Π΄ Π²Π΅ΡΠ²ΡΡ master ΡΡΠΎΠΈΡ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠ° (*), ΡΠ°ΠΊ ΡΡΠΎ ΡΡΠΎ ΡΠ΅ΠΊΡΡΠ°Ρ Π°ΠΊΡΠΈΠ²Π½Π°Ρ Π²Π΅ΡΠΊΠ°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ Git:
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git (Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π΅Π΅ Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ), ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΠΏΠΎΡΡΡΡΠ°ΡΡΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
$ ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²Π΅ΡΠΊΠΈ git
ΠΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° new-features Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½Π° ΠΈΠ· HEAD (ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ) Π²Π΅ΡΠΊΠΈ master .
Π’Π΅ΠΏΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΠ΅ Π²ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Git Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git, Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²ΠΈΡΡΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ Π½Π° ΡΠ½ΠΈΠΌΠΊΠ΅ ΡΠΊΡΠ°Π½Π° Π½ΠΈΠΆΠ΅.
ΠΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· Π² ΡΠΈΠ»ΠΈΠ°Π»Ρ Git:
Π Π°Π½Π΅Π΅ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Git new-features . ΠΠΎ ΠΎΠ½ Π½Π΅ Π°ΠΊΡΠΈΠ²Π΅Π½, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π½ΠΈΠΆΠ΅.
ΠΠΊΡΠΈΠ²Π°ΡΠΈΡ Π²Π΅ΡΠΊΠΈ Π² Git Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΊΠ°Π·Π°.
Π§ΡΠΎΠ±Ρ ΠΎΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ new-features , Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
$ ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ git checkout
Π’Π΅ΠΏΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΠ΅ Π²ΡΠ΅ Π²Π΅ΡΠ²ΠΈ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ Π²Π΅ΡΠΊΠ° Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Π°ΠΊΡΠΈΠ²Π½Π°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ Π²ΡΠΏΠΈΡΠΊΠ° ΠΈΠ· Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠ»ΠΈΠ°Π»Π°:
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²Π΅ΡΠΊΡ, Π° ΠΏΠΎΡΠΎΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π²ΡΡ ΡΠ°Π·Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΠΎ Ρ Git Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π²Π°Ρ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈ ΠΎΡΠΎΡΠΌΠΈΡΡ Π·Π°ΠΊΠ°Π· Π² ΡΠ²ΠΎΡ Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π²Π΅ΡΠΊΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠΈΡ -b ΠΈΠ· git checkout .
ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠ²Ρ new-feature ΠΈ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ Π΅Π΅ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
$ git checkout -b Π½ΠΎΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ
ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Π΅ΡΠ²ΡΡ Git:
ΠΠΎΡΠ»Π΅ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ Π·Π°ΠΊΠ°Π·Π° Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ new-features Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΠ°ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π² ΡΡΡ Π²Π΅ΡΠΊΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» ΡΠ°ΠΉΠ» package.json Π² ΠΌΠΎΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Git, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Ρ git status :
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ new-features , ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π½ΠΈΠΆΠ΅.
$ git add -A
$ git commit -m ‘ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° Π² ΡΠ°ΠΉΠ»Π΅ package.json’
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² Π²Π΅ΡΠΊΡ Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ .
Π’Π΅ΠΏΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΡΠ΅ Π² Π²Π΅ΡΠΊΡ master , Π²Ρ Π½Π΅ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ. ΠΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π² Π²Π΅ΡΠΊΠ΅ new-features , ΠΏΠΎΠΊΠ° Π²Ρ Π½Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ Π΄Π²Π΅ Π²Π΅ΡΠΊΠΈ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ ΠΈΠ»ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ:
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΠ· HEAD (ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ) Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΈ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·Π°ΡΡ Π΅Π΅ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ.
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ Π²Π΅ΡΠ²Ρ ΠΈΠ»ΠΈ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½Π° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ°, ΡΠΎ Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½Π° ΠΈΠ· HEAD (ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ) Π²Π΅ΡΠΊΠΈ, ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Ρ.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ (ΡΠΊΠ°ΠΆΠ΅ΠΌ, test ) ΠΈΠ· HEAD (ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ) Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΈ (ΡΠΊΠ°ΠΆΠ΅ΠΌ, new-features ), Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
$ git branch test Π½ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, Π²Π΅ΡΠΊΠ° test ΠΈ new-features ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ test2 ΠΈΠ· ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅ΡΠΊΠΈ master .
Π‘Π½Π°ΡΠ°Π»Π° ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΠ΅ Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
$ git log βoneline master
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ Π²Π΅ΡΠΊΠΈ master . ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Ρ Π΅Ρ. Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ Π΅Ρ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ 45c336e Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ HEAD (ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ) Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ test2 .ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
$ git branch test2 45c336e
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° test2 ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎ 45c336e ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
ΠΠΎΡ ΠΊΠ°ΠΊ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ Π²Π΅ΡΠΊΠΈ Π² Git. Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π»ΠΈ ΡΡΡ ΡΡΠ°ΡΡΡ.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²Π΅ΡΠΊΠΈ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Git
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π½Π° ΡΠ²ΠΎΠΉ ΡΠ°ΠΉΡ, Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ — ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π²Ρ Π½Π΅ Π²ΡΠ·ΠΎΠ²Π΅ΡΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ Π²Π°ΡΠ΅ΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ.
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΡ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Git Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π½Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ Π² ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ .
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ 3 ΠΊΠΎΠΌΠ°Π½Π΄Ρ: Π²Π΅ΡΠΊΠ°
, checkout
ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ
. ΠΠ΅ΡΠ²Ρ — ΡΡΠΎ, ΠΏΠΎ ΡΡΡΠΈ, Π²Π΅ΡΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π²Π΅ΡΠΊΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ°Π·Π° — ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° ΠΎΡ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΊ Π΄ΡΡΠ³ΠΎΠΉ, ΡΡΠΎΠ±Ρ Π²Ρ Π½Π΅ Π²Π½ΠΎΡΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ°.ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ Π΄Π²Π΅ ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΠΊΠΈ Π² ΠΎΠ΄Π½Ρ, ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΠΎΠ΄Π½Ρ Π²Π΅ΡΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ° ΠΈΠ· Π΄Π²ΡΡ
ΡΠ°Π·Π½ΡΡ
Π²Π΅ΡΡΠΈΠΉ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΈΠ»ΠΈΠ°Π»Π°
ΠΠ°Ρ Π²Π΅Π±-ΡΠ°ΠΉΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ΅ΡΠΈ, Π½ΠΎ ΠΌΡ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, ΡΠ΅Π»Π΅ΠΆΠΊΡ Π΄Π»Ρ ΠΏΠΎΠΊΡΠΏΠΎΠΊ, ΡΡΠΎΠ±Ρ Π½Π°ΡΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΌΠΎΠ³Π»ΠΈ Π½Π°ΡΠ°ΡΡ ΠΏΠΎΠΊΡΠΏΠ°ΡΡ Π½Π°Ρ ΠΏΡΠΎΠ΄ΡΠΊΡ.
ΠΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ cart
:
$ git checkout -b cart
ΠΠ΅ΡΠ΅ΡΠ΅Π» Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ "ΡΠ΅Π»Π΅ΠΆΠΊΠ°"
ΠΡΠΈ ΡΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ° ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΅Π»Π΅ΠΆΠΊΠ° ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π½Π° Π½Π΅Π΅, Π³ΠΎΡΠΎΠ²Π°Ρ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ.ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ:
$ git branch cart
$ git ΠΊΠ°ΡΡΠΈΡΠ°
ΠΡΠ°ΠΊ, ΡΠ΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ Π΄Π²Π΅ Π²Π΅ΡΠ²ΠΈ: Π½Π°ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π²Π΅ΡΠΊΠ°, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ master
, ΠΈ Π½Π°ΡΠ° Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ Π²Π΅ΡΠΊΠ° cart
.
ΠΡΡΠ³ΠΎΠΉ ΡΠΈΠ»ΠΈΠ°Π»
Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Π² Π½Π°ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅ ΠΊΠΎΡΠ·ΠΈΠ½Ρ, Π½ΠΎ Π΄ΠΎΠΏΡΡΡΠΈΠΌ, ΠΌΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΡ Π½Π° Π½Π°ΡΠ΅ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ°ΠΉΡΠ΅. ΠΠ° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ:
$ git checkout -b bugfix
ΠΠ΅ΡΠ΅ΡΠ΅Π» Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ bugfix
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π½Π°ΡΠΈΠΌ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ, Π½Π΅ Π½Π°ΡΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ ΡΠ°ΠΉΡΠ°, ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² Π½Π°ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅ Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ:
$ git commit -m "fixed the bug"
[bugfix c42b77e] ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°
1 ΡΠ°ΠΉΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΡΠΏΡΠ°Π²ΡΡΠ΅ Π²Π΅ΡΠΊΡ Π² Π½Π°Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
$ git push -u origin buxfix
* [Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΠΊΠ°] ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ -> ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅
ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π²Π΅ΡΠΊΠΈ, Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ΅ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΈΠ· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ
ΠΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡΡΠ°Π»ΠΈΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½Ρ, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΠΌ ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΌΠ°ΡΡΠ΅Ρ.ΠΠΎ ΡΠ½Π°ΡΠ°Π»Π° Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ Π½Π°ΡΠ΅ΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠ΅:
$ git checkout master
ΠΠ΅ΡΠ΅ΡΠ΅Π» Π½Π° Π²Π΅ΡΠΊΡ master
Π Π²Π°ΡΠ΅ΠΉ Π²Π΅ΡΠΊΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ββΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ "origin / master"
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π½Π°ΡΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅:
$ git merge bugfix
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ 68fb3f6..c42b77e
ΠΠ΅ΡΠ΅ΠΌΠΎΡΠΊΠ° Π²ΠΏΠ΅ΡΠ΅Π΄
index.html | 1
1 ΡΠ°ΠΉΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½
Π Π½Π°ΠΆΠΌΠΈΡΠ΅ Π½Π° GitHub:
$ git push origin master
ΠΡΠ΅Π³ΠΎ 0 (Π΄Π΅Π»ΡΡΠ° 0), ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ 0 (Π΄Π΅Π»ΡΡΠ° 0)
Π½Π° [email protected]: adamw / first-project / repository.ΠΌΠ΅ΡΠ·Π°Π²Π΅Ρ
68fb3f6..c42b77e ΠΌΠ°ΡΡΠ΅Ρ -> ΠΌΠ°ΡΡΠ΅Ρ
Π£Π±ΠΎΡΠΊΠ°
ΠΡΠ΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Ρ ΠΎΡΠΎΡΠΎ, ΠΎΡΠΈΠ±ΠΊΠ° ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π° ββΠΈ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠ°. Π£Π΄Π°Π»ΠΈΠΌ Π½Π°ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡΠΈΠ±ΠΎΠΊ:
$ git branch -d bugfix
ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ (Π±ΡΠ»ΠΎ c42b77e)
ΠΡ ΡΠ°ΠΊΠΆΠ΅ Π·Π°Ρ ΠΎΡΠΈΠΌ ΡΠ΄Π°Π»ΠΈΡΡ Π²Π΅ΡΠΊΡ ΠΈΠ· Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
$ git push origin - ΡΠ΄Π°Π»ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ
ΠΠΎΠΌΡ [email protected]: adamw / first-project / repository.git
- [ΡΠ΄Π°Π»Π΅Π½ΠΎ] ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅
Π‘Π²ΠΎΠ΄ΠΊΠ°
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠΊ ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΡΠ°ΠΊ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎ.
ΠΠ»Π°Π²Π° 22 Π€ΠΈΠ»ΠΈΠ°Π»Ρ | Π£Π΄Π°ΡΠ½ΠΎΠ³ΠΎ Git ΠΈ GitHub Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉR
ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²Ρ ΠΎΡΠΊΠ»ΠΎΠ½ΡΠ΅ΡΠ΅ΡΡ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ
Π΄Π΅Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΡ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠ°. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π»ΡΠ΄ΡΠΌ
ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ, Π½Π΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°Ρ ΡΠ°Π±ΠΎΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°.
ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ Π² git ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎΠ΅, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅ΡΠΊΠΈ ΠΈ
ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠ²ΡΠΌΠΈ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎΡΡΠΈ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ git ΠΏΠΎΠΎΡΡΡΠ΅Ρ
ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ Π²Π΅ΡΠΊΠΈ Π΄Π»Ρ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ Π½ΠΎΠ²ΡΡ
ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΠ°ΡΡΠΎ
Π±ΡΡΡΡΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ ΠΈΡ
Π²ΠΌΠ΅ΡΡΠ΅.
Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ git branch
, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²Π΅ΡΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ git checkout
. Π§ΡΠΎΠ±Ρ ΠΎΡΠ»ΠΈΡΠΈΡΡ Π΅Π³ΠΎ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° master
, ΠΌΡ Π½Π°Π·ΠΎΠ²Π΅ΠΌ ΡΡΠΎ Β«ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠΊΠΎΠΉΒ».
git branch issue-5
git checkout issue-5
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ»ΡΠΊ git checkout -b issue-5
Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²Π΅ΡΠΊΠΈ.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ»ΠΈΡΡ Π½Π° Π²Π΅ΡΠΊΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π΅ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ.
ΠΠΎΠΌΠΌΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΎΡΠ΄Π΅Π»Π΅Π½ΠΈΡ
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ git checkout
Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠ²ΡΠΌΠΈ.
ΠΠΎ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π² Π²Π΅ΡΠΊΠ΅ ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ,
Π° ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΠΊΠΎΠΉ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½Π°? ΠΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² — Git
ΡΠ°ΠΉΠ½ΠΈΠΊ, Π½ΠΎ ΠΎΠ±ΡΡΠ½ΠΎ
Π»ΡΡΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ — Π·Π°ΡΠΈΡΠΈΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ. ΠΠ΄Π΅ΡΡ Ρ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Β«WIPΒ» Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π½Π° Π½Π΅Π·Π°Π²Π΅ΡΡΠ΅Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΡ.
git commit --all -m "WIP"
ΠΠ°ΡΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ git
ΠΠ°ΡΠ΅ΠΌ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π²Π΅ΡΠ½Π΅ΡΠ΅ΡΡ Π² ΡΠΈΠ»ΠΈΠ°Π» ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ, Π²Ρ
Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ, ΡΠ±ΡΠΎΡΠΈΠ² ΡΠ²ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅.
ΠΡΠ»ΠΈ ΡΡΠΎ ΡΡΡΠ΄Π½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΠΊ Π΄ΡΡΠ³ΠΎΠΌΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, ΡΡΡΠ»ΠΊΠ° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π° ΠΊΠ°ΠΊ SHA ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΠΈΠΊΡΠ°ΡΠΈΠΈ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π² git log
.
ΠΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠΈΠ»ΠΈΠ°Π»Π°
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π»ΠΈ Π΅Π΅ Π² ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΠ²ΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ master
ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ Π²Π΅ΡΠΊΡ.
ΠΌΠ°ΡΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ git
git merge ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°-5
Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ²
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΡΠ»ΠΈΡΠ½ΠΈΠ΅ ΠΏΡΠΎΡ
ΠΎΠ΄ΠΈΡ Π³Π»Π°Π΄ΠΊΠΎ.ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ ΠΎΠ±Π΅ Π²Π΅ΡΠ²ΠΈ Π²Ρ
ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΡΠ°ΡΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ°ΠΉΠ»Π°, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅
ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ.
git merge issue-5
# ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ index.html
# CONFLICT (content): ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΡΠ»ΠΈΡΠ½ΠΈΡ Π² index.html
# ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ»ΠΈΡΠ½ΠΈΠ΅ Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ; ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎ NOT PANIC . ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ — ΡΡΠΎ Π½Π΅ ΠΊΠΎΠ½Π΅Ρ
world ΠΈ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ
ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ°Π»Ρ ΠΈ ΠΈΡ
Π»Π΅Π³ΠΊΠΎ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ.
ΠΠ΅ΡΠ²ΡΠΌ ΡΠ°Π³ΠΎΠΌ ΠΊ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΡΠ»ΠΈΡΠ½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π²
ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Ρ git status
:
git ΡΡΠ°ΡΡΡ
# ΠΠ° Π²Π΅ΡΠΊΠ΅ ΠΌΠ°ΡΡΠ΅ΡΠ°
# Π£ Π²Π°Ρ Π΅ΡΡΡ Π½Π΅ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ ΠΏΡΡΠΈ.# (ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ "git commit")
#
# ΠΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠ΅ ΠΏΡΡΠΈ:
# (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ "git add ...", ΡΡΠΎΠ±Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅)
#
# ΠΎΠ±Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ: index.html
#
# Π² ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ Π±ΡΠ»ΠΎ (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ "git add" ΠΈ / ΠΈΠ»ΠΈ "git commit -a")
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ index.html
Π½Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΎ ΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ
Π·Π°ΡΠ΅ΠΌ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ», ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡ.
<<<<<<< HEAD: index.html
ΠΊΠΎΠ½ΡΠ°ΠΊΡ: [email protected]
=======
ΡΠ²ΡΠΆΠΈΡΠ΅ΡΡ Ρ Π½Π°ΠΌΠΈ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ [email protected]
>>>>>>> ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°-5: index.html
Π ΡΡΠΎΠΌ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ <<<<<< HEAD: index.html
ΠΈ ======
ΡΠ²Π»ΡΡΡΡΡ
ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΠΈΠ· Π²Π΅ΡΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ ΡΠ΅ΠΉΡΠ°Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΠ΅ΡΡ. Π‘ΡΡΠΎΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ =======
ΠΈ >>>>>>> issue-5: index.html
Π²Π·ΡΡΡ ΠΈΠ· Π²Π΅ΡΠ²ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌ.
Π§ΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ, ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠΉΡΠ΅ ΡΡΠΎΡ ΡΠ°Π·Π΄Π΅Π», ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ°ΠΆΠ°ΡΡ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π² ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΠΎΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅.ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΡ ΠΈΠ»ΠΈ ΠΈΠ½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π³ΠΈΠ±ΡΠΈΠ΄. Π’Π°ΠΊΠΆΠ΅ ΡΠ΄Π°Π»ΠΈΡΠ΅ ΠΌΠ°ΡΠΊΠ΅ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° <<<<<<
, ======
ΠΈ >>>>>>
.
ΡΠ²ΡΠΆΠΈΡΠ΅ΡΡ Ρ Π½Π°ΠΌΠΈ ΠΏΠΎ [email protected]
Π’Π΅ΠΏΠ΅ΡΡ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ git add index.