git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Git commit

ΠšΠΎΠΌΠΌΠΈΡ‚ Π² Git ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² SVN

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ дСйствий

Π‘Π½ΠΈΠΌΠΊΠΈ состояния, Π° Π½Π΅ различия

Помимо Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ SVN ΠΈ Git с практичСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, ΠΈΡ… базовая рСализация Ρ‚Π°ΠΊΠΆΠ΅ основываСтся Π½Π° ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ… концСпциях проСктирования. SVN отслСТиваСт различия Π² Ρ„Π°ΠΉΠ»Π΅, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ модСль управлСния вСрсиями Git базируСтся Π½Π° снимках состояния. НапримСр, Π² ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ SVN содСрТатся различия исходного Ρ„Π°ΠΉΠ»Π° ΠΈ Ρ„Π°ΠΉΠ»Π°, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. А Git записываСт Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ всС содСрТимоС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² Git Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ быстрСС, Ρ‡Π΅ΠΌ Π² SVN, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Ρ„Π°ΠΉΠ»Π° Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Β«ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒΒ» ΠΈΠ· Π΅Π³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ β€” Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Git находится ΡƒΠΆΠ΅ готовая рСдакция ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°.

МодСль снимков состояния Git влияСт практичСски Π½Π° всС аспСкты ΠΌΠΎΠ΄Π΅Π»ΠΈ управлСния вСрсиями, ΠΎΡ‚ инструмСнтов вСтвлСния ΠΈ слияния Π΄ΠΎ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… процСссов ΠΏΡ€ΠΈ совмСстной Ρ€Π°Π±ΠΎΡ‚Π΅.

РаспространСнныС ΠΎΠΏΡ†ΠΈΠΈ

ΠšΠΎΠΌΠΌΠΈΡ‚ проиндСксированного состояния ΠΊΠΎΠ΄Π°. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ с ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ввСсти ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ. ПослС Π²Π²ΠΎΠ΄Π° коммСнтария сохранитС Ρ„Π°ΠΉΠ» ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚.

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° состояния со всСми измСнСниями Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ измСнСния отслСТиваСмых Ρ„Π°ΠΉΠ»ΠΎΠ² (Ρ‚Π΅Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git add ).

Π­Ρ‚ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ добавляСт ΠΊΠΎΠΌΠ°Π½Π΄Π΅ commit Π½ΠΎΠ²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ этого ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ послСдний ΠΊΠΎΠΌΠΌΠΈΡ‚. ВмСсто создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° проиндСксированныС измСнСния Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, эта ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ настроСнный тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ систСмы с ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Ρ€Π°Π½Π΅Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ commit

ΠžΠΊΡ€Π°ΡˆΠ΅Π½Π½Ρ‹ΠΉ Π·Π΅Π»Π΅Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄ Β«new file: hello.py Β» сообщаСт ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» hello.py Π±ΡƒΠ΄Π΅Ρ‚ сохранСн ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. ΠšΠΎΠΌΠΌΠΈΡ‚ выполняСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ (настраиваСмый Ρ‡Π΅Ρ€Π΅Π· git config ) для Π²Π²ΠΎΠ΄Π° коммСнтария ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ список Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ зафиксированы Π² этом ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅:

ΠžΡΠΎΠ±Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ для ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ Π² Git Π½Π΅Ρ‚, Π½ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ пСрвая строка содСрТит описания ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π΄Π»ΠΈΠ½ΠΎΠΉ Π΄ΠΎ 50 символов, Π·Π°Ρ‚Π΅ΠΌ слСдуСт пустая строка ΠΈ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ пояснСниС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ пСрвая строка коммСнтария ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Π° Ρ‚Π΅ΠΌΠ΅ элСктронного письма. ΠžΡΡ‚Π°Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ коммСнтария считаСтся Ρ‚Π΅Π»ΠΎΠΌ сообщСния ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ описания Π½Π°Π±ΠΎΡ€Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅. МногиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² коммСнтариях настоящСС врСмя. Π’Π°ΠΊ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ становится большС ΠΏΠΎΡ…ΠΎΠΆ Π½Π° список дСйствий Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, благодаря Ρ‡Π΅ΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСзаписи истории становятся Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятными.

ОбновлСниС ΠΊΠΎΠΌΠΌΠΈΡ‚Π° (ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ amend)

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„Π°ΠΉΠ»ΠΎΠΌ hello.py ΠΈΠ· ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. Π”Π°Π²Π°ΠΉΡ‚Π΅ внСсСм Π² Ρ„Π°ΠΉΠ» hello.py Π½ΠΎΠ²Ρ‹Π΅ измСнСния ΠΈ запустим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Π‘Π½ΠΎΠ²Π° откроСтся настроСнный тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€. Но Π½Π° этот Ρ€Π°Π· ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΡƒΠΆΠ΅ Π²Π²ΠΎΠ΄ΠΈΠ»ΠΈ Ρ€Π°Π½Π΅Π΅. Π­Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ создаСм Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚, Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ послСдний.

РСзюмС

МодСли ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² SVN ΠΈ Π² Git сущСствСнно ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ, Π½ΠΎ ΠΈΠ·-Π·Π° ΠΎΠ±Ρ‰Π΅ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Π°. Если Π²Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π² Git, имСя ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с SVN, Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² Git β€” простая опСрация, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ слСдуСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ часто. Π’ SVN ΠΊΠΎΠΌΠΌΠΈΡ‚ β€” слоТная опСрация, связанная с Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ запроса, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π² Git ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ локально ΠΈ ΠΏΠΎ Π±ΠΎΠ»Π΅Π΅ эффСктивному Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ.

Π“ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Git?

ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с этим ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΌ руководством.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Git для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Π£Ρ€ΠΎΠΊ 4.
ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΈ история ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²
Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ

Π’ΠΈΠ΄Π΅ΠΎΡƒΡ€ΠΎΠΊ. Π§Π°ΡΡ‚ΡŒ 1. ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, основы Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ ΠΈ историСй ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

Π’ΠΈΠ΄Π΅ΠΎΡƒΡ€ΠΎΠΊ. Π§Π°ΡΡ‚ΡŒ 2. ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΡ‹ ΠΈ Ρ„ΠΈΡˆΠΊΠΈ

Π’ΠΈΠ΄Π΅ΠΎΡƒΡ€ΠΎΠΊ. Π§Π°ΡΡ‚ΡŒ 3. ΠžΠ±Ρ‰ΠΈΠ΅ наблюдСния ΠΈ совСты. Как Π΄Π΅Π»Π°Ρ‚ΡŒ «Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅» ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹

ΠšΠΎΠ½ΡΠΏΠ΅ΠΊΡ‚ ΡƒΡ€ΠΎΠΊΠ°

ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ содСрТаниС ΡƒΡ€ΠΎΠΊΠ°, основныС инструкции для ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ссылки ΠΈ совСты.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

По-Π½Π°ΡƒΡ‡Π½ΠΎΠΌΡƒ это сохранСниС состояния, фиксация ΠΈΠ»ΠΈ слСпок ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ добавляСм Π±Π»ΠΎΠΊ ΡƒΡ‡Π΅Π½ΠΈΠΊΠΎΠ² Π½Π° сайт. ДобавляСм Π½ΠΎΠ²ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ Π² index.html ΠΈ Π½ΠΎΠ²Ρ‹Π΅ стили Π² main.css. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ измСнСния, Π½ΡƒΠΆΠ½ΠΎ ΠΈΡ… Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ. Но ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ git, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚. Команда git add добавляСт (ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Π΅Ρ‚) Ρ„Π°ΠΉΠ»Ρ‹ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ. МоТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π²ΠΎΡ‚ Ρ‚Π°ΠΊ

Π”ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ сразу ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Π½ΠΎ стоит всСгда Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ, Ρ‚ΠΎΡ‡Π½ΠΎ Π»ΠΈ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚ всС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹. Если ошиблись ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ„Π°ΠΉΠ» Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ этот Ρ„Π°ΠΉΠ» ΠΈΠ· ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ….

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ сам ΠΊΠΎΠΌΠΌΠΈΡ‚

БостояниС Ρ„Π°ΠΉΠ»ΠΎΠ² Π² git. Π˜Π·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Ρ… Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ «ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Ρ‹» ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚.

git add filename добавляСт ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ.
git reset filename удаляСт Ρ„Π°ΠΉΠ» ΠΈΠ· ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΈ этом Π½Π΅ мСняСтся. Один Ρ„Π°ΠΉΠ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΈ Π² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Ρ…, ΠΈ Π² ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ происходит, Ссли ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ», Π½ΠΎ Π½Π΅ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΠ»ΠΈ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠ»ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ Π² Π½Π΅ΠΌ измСния.

Из Ρ‡Π΅Π³ΠΎ состоит ΠΊΠΎΠΌΠΌΠΈΡ‚

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈΠΌΠ΅Π΅Ρ‚

Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ ΠΈ нСотслСТиваСмыС Ρ„Π°ΠΉΠ»Ρ‹

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², git log

ВсС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² истории ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Ρ…Ρ€Π°Π½ΠΈΡ‚ всС Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ±ΠΎ всСх ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ история ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя всС свСдСния ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ…: Ρ…ΡΡˆ, Π°Π²Ρ‚ΠΎΡ€, Π΄Π°Ρ‚Π° ΠΈ список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Бписок ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git show ΠΏΠΎ Ρ…ΡΡˆΡƒ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°

Если ΠΌΡ‹ сдСлали ΠΊΠΎΠΌΠΌΠΈΡ‚, Π½ΠΎ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ commit message

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚ сообщСниС послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Π­Ρ‚ΠΎ пСрСзаписываниС истории, опСрация опасная. Π›ΡƒΡ‡ΡˆΠ΅ Π΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π½Π° сСрвСр (push Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΡƒΡ€ΠΎΠΊ)

ΠžΡ‚ΠΊΠ°Ρ‚ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², git revert

Если ΠΌΡ‹ сдСлали Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ измСнСния, сдСланныС Π² Π½Π΅ΠΌ, Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π° git revert

Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ git отправляСт Π² нСотслСТиваСмыС. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° стоит сначала Π΅Π³ΠΎ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ, Π° ΠΏΠΎΡ‚ΠΎΠΌ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ доступны Ρ‡Π΅Ρ€Π΅Π· git diff

ΠŸΡ€ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ mv git сначала ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ 2 Ρ„Π°ΠΉΠ»Π°: старый ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ нСотслСТиваСмый. Π§Ρ‚ΠΎΠ±Ρ‹ git понял, Ρ‡Ρ‚ΠΎ этот Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ, Π½ΡƒΠΆΠ½ΠΎ сначала Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ эти Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ

Π’ΠΎΠ³Π΄Π° ΠΏΡ€ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ git status Ρ„Π°ΠΉΠ» Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ

МоТно ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этого ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ состояния, Ссли ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ

Π’ΠΎΠ³Π΄Π° Ρ„Π°ΠΉΠ» Π±ΡƒΠ΄Π΅Ρ‚ сразу ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ. Π’ΠΎ ΠΆΠ΅ самоС с ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»Π°

Командная строка vs IDE

Π Π°Π±ΠΎΡ‚Π° Π² PhpStorm продСмонстрирована Π² ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π΄Π²ΡƒΡ… частях Π²ΠΈΠ΄Π΅ΠΎ.

Как ΠΈ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ Π² IDE. НапримСр, процСсс добавлСния Ρ„Π°ΠΉΠ»ΠΎΠ² (git add) Π² PhpStorm ΠΏΡ€ΠΈ создании ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ‚ внимания. Но Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ git add ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½. И Ρ‡Ρ‚ΠΎ любая IDE ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡ‚ΠΎΠΌ всС Ρ€Π°Π²Π½ΠΎ выполняСт Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git. ΠŸΡ€ΠΎΡΡ‚ΠΎ для нас прСдоставляСтся удобная ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠ°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΡ‹ большС ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΠ»ΠΈΡΡŒ Π½Π° самом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, Π° Π½Π΅ Π½Π° git.

НаблюдСния ΠΈ совСты ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ

Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ свои ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ соглашСния. Но я ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΎΠ±Ρ‰ΠΈΠ΅ совСты ΠΈ Ρ€Π°Π·ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π² любом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ инструмСнты Π² IDE, Π½ΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку. Π’ Π½Π΅ΠΉ Π²Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ устроСн git, ΠΊΠ°ΠΊ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚

Π₯ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΈ ΠΏΠ»ΠΎΡ…ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния git ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π½Π΅ Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ»ΠΎΡ…ΠΈΠΌΠΈ ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌΠΈ. Но Π΅ΡΡ‚ΡŒ ΡƒΠ΄Π°Ρ‡Π½Ρ‹Π΅ ΠΈ Π½Π΅ΡƒΠ΄Π°Ρ‡Π½Ρ‹Π΅ подписи ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π½Π°ΡˆΠΈΡ… ΠΊΠΎΠ»Π»Π΅Π³. НСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„Π°ΠΉΠ» VipClient
Π Π°Π±ΠΎΡ‚Π° с vip-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ вынСсСна Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс
По ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² VipClient ΠΌΡ‹ скорСС всСго Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с Π’Π˜ΠŸΠ°ΠΌΠΈ. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ это Ρ‚ΠΎΡ‡Π½ΠΎ понятно, плюс Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ информация, Ρ‡Ρ‚ΠΎ это ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс.

ΠŸΠΎΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ стили Π² main.css
Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ стилСй Π² main.css
ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ ΠΏΡ€Π°Π²ΠΊΠ΅ стилСй, Π½ΠΎ нСпоянтно, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ. Π‘Π°Π³Π°? НовыС значСния? ИзмСнСн Ρ†Π²Π΅Ρ‚ тСкста ΠΏΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€Π°? Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ясно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ это Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³

МалСнький фикс
Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π° ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠ° Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ title страницы «Πž ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ»
ΠšΠΎΠΌΠΌΠΈΡ‚ «ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΠΉ фикс» Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚, Π² Ρ‡Π΅ΠΌ ΠΎΠ½ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ. Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠ΅ прСдставлСниС

НСмного ΠΎ философии ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² заставляСт Ссли Π½Π΅ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, Ρ‚ΠΎ ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΊ Π½Π΅ΠΉ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ. Π‘ git Π½Π°ΠΌ приходится Π½Π΅ просто ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, Π° ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ написаниС. ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ. Π”Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° нСбольшиС части.

ΠœΡ‹ большС Π΄ΡƒΠΌΠ°Π΅ΠΌ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ Π½Π΅ ΠΎΠ΄Π½ΠΈ, Π° Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅. Π˜ΡΡ‚ΠΎΡ€ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² общая для всСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π§Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ ΠΌΡ‹ научимся Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, Ρ‚Π΅ΠΌ Π»Π΅Π³Ρ‡Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² истории Π½Π°ΠΌ самим ΠΈ нашим ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ.

Π’ любом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π²Π°ΠΆΠ½Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ΄ ΠΈ Π΅Π³ΠΎ структура, Π½ΠΎ ΠΈ история ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ commit message.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

На этом всС. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ большС Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с историСй ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈ посмотрим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ использования ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git log

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π“Π°ΠΉΠ΄ ΠΏΠΎ Git : Π§Π°ΡΡ‚ΡŒ 1 : Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Git

ΠžΡ‚Π²Π΅Ρ‡Π°ΡŽ Π½Π° вопросы: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ, Π²ΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ‚ΠΊΡƒ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ.

Π― пользовался git Π΅Ρ‰Π΅ Π² ΡƒΠ½ΠΈΠ²Π΅Ρ€Π΅, Π±Ρ‹Π»ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄ΠΈΠΏΠ»ΠΎΠΌ ΠΈ Π½Π΅ ΠΏΠ»ΠΎΠ΄ΠΈΡ‚ΡŒ 100 ΠΊΠΎΠΏΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ² с названиями: β€œΠ΄ΠΈΠΏΠ»ΠΎΠΌ (Π½ΠΎΠ²Ρ‹ΠΉ)”, β€œΠ΄ΠΈΠΏΠ»ΠΎΠΌ (Π½ΠΎΠ²Π΅Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ)”, β€œΠ΄ΠΈΠΏΠ»ΠΎΠΌ (Π½ΠΎΠ²Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ)”.

Мои ΡΡ‚Π°Ρ‚ΡŒΠΈ основаны Π½Π° ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ курсС LearnGitBranching. Но Ρƒ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ сущСствСнный нСдостаток, ΠΎΠ½ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ настоящий Git Π² процСссС обучСния. Из-Π·Π° этого ряд Π²Π°ΠΆΠ½Ρ‹Ρ… нюансов упускаСтся.

Π’ ΠΌΠΎΠ΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° настоящСм Git. ΠŸΡ€ΠΎΡΡ‚ΠΎ повторяйтС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π·Π° ΠΌΠ½ΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ VCS?

БистСмы контроля вСрсий (Π‘ΠšΠ’, VCS, Version Control Systems) ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΄ΠΎ старой вСрсии, ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡΠ»ΠΈΠ²Π°Ρ‚ΡŒ свои измСнСния Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ вашСго ΠΊΠΎΠ΄Π°. Git Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ локально ΠΈ всС ваши Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ хранятся Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠ°ΠΏΠΊΠ°Ρ… Π½Π° ТСстком дискС. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ хостинги Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ GitHub ΠΈ GitLab, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅.

VCS ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ нСскольким Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ внСсённыС измСнСния нСзависимо Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. ΠŸΡ€ΠΈ этом ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ участник ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚, Π½Π°Π΄ Ρ‡Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π² ΠΎΠ±Ρ‰ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚Π°Ρ… ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ Π·Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ Git, создадим свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Но сначала установим git.

Установка git

Основой интСрфСйс для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Git-ΠΎΠΌ являСтся консоль. Π­Ρ‚ΠΎ Π½Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ€Π°Π±ΠΎΡ‚Π΅, Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· консоль.

Windows. ΠŸΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠΌ ΠΏΠΎ этой ссылкС, скачиваСм ΠΈ устанавливаСм.

Для Mac OS. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ пишСм:

Linux. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

Настройка

Π’Ρ‹ установили сСбС Git. Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΅Π³ΠΎ настроим, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ создавали снимок ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, указывался Π°Π²Ρ‚ΠΎΡ€.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» (Linux ΠΈ MacOS) ΠΈΠ»ΠΈ консоль (Windows) ΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ рСпозитория

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с Git локально Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Для Π½Π°Ρ‡Π°Π»Π° создадим ΠΏΠ°ΠΏΠΊΡƒ, которая Π±ΡƒΠ΄Π΅Ρ‚ нашим ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ находятся сСйчас Π² ΠΏΠ°ΠΏΠΊΠ΅ git-project :

ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹

ΠšΠΎΠΌΠΌΠΈΡ‚ Π² git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ снимок всСх Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. ΠŸΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΊ огромная копия, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ эффСктивнСС.

Git пытаСтся Π±Ρ‹Ρ‚ΡŒ Π»Ρ‘Π³ΠΊΠΈΠΌ ΠΈ быстрым, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ просто слСпо ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ вСсь ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, Π° ΡƒΠΆΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Π½Π°Π±ΠΎΡ€ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Β«Π΄Π΅Π»ΡŒΡ‚ΡƒΒ» ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ вСрсиСй ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ. Π­Ρ‚ΠΎ позволяСт Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ мСньшС мСста.

Π’Π°ΠΊΠΆΠ΅ Git Ρ…Ρ€Π°Π½ΠΈΡ‚ всю ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π±Ρ‹Π» сдСлан ΠΈ ΠΊΠ΅ΠΌ. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΈΠ·-Π·Π° ΠΊΠΎΠ³ΠΎ ΡƒΠΏΠ°Π» ΠΏΡ€ΠΎΠ΄ ΠΈ Π½Π°Π²Π°Π»ΡΡ‚ΡŒ Π΅ΠΌΡƒ 😄

Π€Π°ΠΉΠ»Ρ‹ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² 3 Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… β€œΠΎΠ±Π»Π°ΡΡ‚ΡΡ…β€.

Наш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ сСйчас пуст. Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ„Π°ΠΉΠ»:

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

На Π΄Π°Π½Π½ΠΎΠΌ этапС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ β€œΠ Π°Π±ΠΎΡ‡ΠΈΠΉ каталог” содСрТит Π΄Π°Π½Π½Ρ‹Π΅.

Π‘Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π Π°Π±ΠΎΡ‡ΠΈΠΉ ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ пСсочницСй, Π³Π΄Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ измСнСния ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ. На Π΄Π°Π½Π½ΠΎΠΌ этапС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ всС измСнСния ΠΈ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ послСднСму ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ.

Π‘Π΅Π· добавлСния Ρ„Π°ΠΉΠ»Π° Π² ИндСкс Ρƒ нас Π½Π΅ получится ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ это сами:

Для добавлСния Π² ИндСкс ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°:

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ внСсти измСнСния Π² Ρ„Π°ΠΉΠ» ΠΈ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ. ΠœΡ‹ ΠΏΡ€ΠΎΠΉΠ΄Ρ‘ΠΌ Ρ‡Π΅Ρ€Π΅Π· всё Ρ‚Ρƒ ΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ; сначала ΠΌΡ‹ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ Ρ„Π°ΠΉΠ» Π² нашСм Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ эту Π²Π΅Ρ€ΡΠΈΡŽ Ρ„Π°ΠΉΠ»Π° v2 ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ красным Ρ†Π²Π΅Ρ‚ΠΎΠΌ.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим, ΠΊΠ°ΠΊΠΈΠ΅ измСнСния ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΈ Π² git:

Π•Ρ‰Π΅ Ρ€Π°Π· провСряСм статус рСпозитория:

Новый Ρ„Π°ΠΉΠ» появился Π² спискС Π½Π΅ отслСТиваСмых, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π Π°Π±ΠΎΡ‡Π΅ΠΌ ΠšΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² отслСТиваниС этот Ρ„Π°ΠΉΠ», Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ Ρ€Π°Π½Π΅Π΅.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚. Π—Π½Π°Ρ‡ΠΈΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚:

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Для удобства восприятия Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ наши ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹. ΠšΡ€ΡƒΠΆΠΎΡ‡ΠΊΠΈ это ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, Π° стрСлочки ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Π‘Π»ΠΎΠΊ ΠΏΠΎΠΌΠΎΡ‰ΠΈ

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ истории ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

Помимо Π°Π²Ρ‚ΠΎΡ€Π° ΠΈ Π΄Π°Ρ‚Ρ‹, Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΈΡ‚Π° Π΅ΡΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся hash. ΠŸΡ€ΠΈΠΌΠ΅Ρ€: 2934ee19f4d4ca37ff9bea9dc8208ef5362d789e. ΠΠ΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ Π΄Π»ΠΈΠ½Π½ΡƒΡŽ запись, git ΠΏΠΎΠΉΠΌΠ΅Ρ‚ ΠΈ ΠΏΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ 5 символам, ΠΊΠ°ΠΊΠΎΠΉ hash Π²Π°ΠΌ Π½ΡƒΠΆΠ΅Π½.

Команда git log ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ большоС количСство ΠΎΠΏΡ†ΠΈΠΉ для поиска ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ критСриям.

Навигация

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΌ Ρ„ΠΈΡ‡Π°ΠΌ Git, Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы пСрСмСщСния ΠΏΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Detaching HEAD

Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, ΠΊΠ°ΠΊ Π½Π°ΠΌ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π±ΠΎΠ»Π΅Π΅ старой вСрсии нашСго рСпозитория.

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ HEAD ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° имя Π²Π΅Ρ‚ΠΊΠΈ. Но это ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ hash Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π½Π΅ΠΌΡƒ.

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» ΠΈ сдСлаСм Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚:

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ выглядСл наш Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ послС Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ checkout ΠΈ Ρ…ΡΡˆ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, достаточно ΠΏΠ΅Ρ€Π²Ρ‹Ρ… 5 символов.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π’Ρ‹Π·Π²Π°Π² git log Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ HEAD Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚:

ΠŸΡ€ΠΈ этом ΠΌΡ‹ Π½Π΅ потСряли Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈ всС измСнСния Π² Π½Π΅ΠΌ, ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² этом с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Π’Π΅Ρ€Π½Π΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ HEAD Π½Π° main :

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ссылки

ΠŸΠ΅Ρ€Π΅Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ указания Ρ…Π΅ΡˆΠ΅ΠΉ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Git ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ссылки. Π‘ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ссылками ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ с ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ мСста ΠΈ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Π½Π΅Π³ΠΎ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΠΌΡΡ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ‚ Π²Ρ‹ΡˆΠ΅ main :

Π”Π°, ΠΌΡ‹ снова ΠΏΠΎΠΏΠ°Π»ΠΈ Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ HEAD сСйчас вновь ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚.

ВСрнСмся Π½Π° Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚:

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ шагов Π½Π°Π·Π°Π΄. Π‘Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ ^ нСсколько Ρ€Π°Π·, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Git ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ‚ΠΈΠ»ΡŒΠ΄Π°

ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ ΠΊ Ρ‚ΠΈΠ»ΡŒΠ΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ количСство Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

ΠœΡ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΠ»ΠΈΡΡŒ Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚. ВСрнСмся:

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π­Ρ‚ΠΎ Π±Ρ‹Π»Π° пСрвая ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡŽ git. ΠœΡ‹ установили git ΠΈ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ для создания ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Π½ΠΈΠΌ.

Π­Ρ‚ΠΎΠ³ΠΎ ΡƒΠΆΠ΅ достаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Git локально ΠΈ Π½Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΡΡ‚ΡŒ измСнСния, ΠΎΠ± ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΡΡ‚Π°Ρ‚ΡŒΡΡ….

Если всС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΡƒΡ€ΠΎΠΊΡƒ 👇

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Git Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅

БущСствуСт Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π° Pro Git, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описаны всС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ возмоТности Π³ΠΈΡ‚Π°. Но послС Π΅Π΅ прочтСния Ρƒ ΠΌΠ½ΠΎΠ³ΠΈΡ… остаСтся Π½Π΅ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ это всС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. Π’ частности, Ρƒ программистов Ρ€Π°Π·Π½ΠΎΠ³ΠΎ уровня часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ вопросы ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ Π² Git, ΠΊΠΎΠ³Π΄Π° ΠΈΡ… Π·Π°Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ собой. ΠŸΠΎΡ€ΠΎΠΉ ΠΌΠ½Π΅ попадались ΠΎΡ‡Π΅Π½ΡŒ Β«ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Π΅Β» ΠΈ Π½Π΅ΠΎΠΏΡ€Π°Π²Π΄Π°Π½Π½ΠΎ услоТнСнныС схСмы Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π³ΠΈΡ‚ΠΎΠΌ. Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π² сообщСствС программистов ΡƒΠΆΠ΅ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ схСма Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π³ΠΈΡ‚ΠΎΠΌ ΠΈ Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ Π² Π½Π΅ΠΌ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я Ρ…ΠΎΡ‡Ρƒ Π΄Π°Ρ‚ΡŒ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ основных ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Git, ΠΈ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Β«ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽΒ» схСму Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ. МногоС ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ описано Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ справСдливо ΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ… систСм управлСния вСрсиями.

Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π° для программистов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ Git, ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΡƒΡŽ систСму управлСния вСрсиями. Для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… программистов эта ΡΡ‚Π°Ρ‚ΡŒΡ покаТСтся ΠΎΡ‡Π΅Π½ΡŒ простой ΠΈ банальной.

Для Π½Π°Ρ‡Π°Π»Π° Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся с Ρ‚Π΅ΠΌ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π²Π΅Ρ‚ΠΊΠ° ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚.

ΠšΠΎΠΌΠΌΠΈΡ‚

МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚ это основной ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² любой систСмС управлСния вСрсиями. Π’ Π½Π΅ΠΌ содСрТится описаниС Ρ‚Π΅Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ вносит ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π² ΠΊΠΎΠ΄ прилоТСния. Π’ Git ΠΊΠΎΠΌΠΌΠΈΡ‚ состоит ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Для простоты понимания ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ это односвязный список, состоящий ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΈ ссылка Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π£ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π΅ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ свойства. НапримСр, Π΄Π°Ρ‚Π° ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, Π°Π²Ρ‚ΠΎΡ€, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ ΠΈ Ρ‚.ΠΏ.
Π’ качСствС коммСнтария ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ‚Π΅ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ вносит этот ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² ΠΊΠΎΠ΄, ΠΈΠ»ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ Ρ€Π΅ΡˆΠ°Π΅Ρ‚.

Git это распрСдСлСнная систСма управлСния вСрсиями. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ участника ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π΅ΡΡ‚ΡŒ своя копия рСпозитория, которая Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ β€œ.git”, которая располоТСна Π² ΠΊΠΎΡ€Π½Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ИмСнно Π² этой ΠΏΠ°ΠΏΠΊΠ΅ хранятся всС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Git. Когда Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с Git, ΠΎΠ½ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с этой ΠΏΠ°ΠΏΠΊΠΎΠΉ.

ЗавСсти Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΎΡ‡Π΅Π½ΡŒ просто, это дСлаСтся ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρƒ вас ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹ΠΉ пустой Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒΡΡ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎΡΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π² свою Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ с ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория. ДСлаСтся это Ρ‚Π°ΠΊ:

БущСствуСт нСсколько основных областСй Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΊΠΎΠ΄.

ΠŸΡ€ΠΈ этом ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ маски со Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΎΠΉ.
ΠŸΠΎΡ‚ΠΎΠΌ Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² свой Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

git commit –m β€œΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ коммиту”

Когда ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π½Π°ΠΊΠΎΠΏΠΈΡ‚ΡŒΡΡ достаточно ΠΌΠ½ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ, Π²Ρ‹ выполняСтС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ПослС Ρ‡Π΅Π³ΠΎ ваши ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ уходят Π² ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Если Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ измСнСния ΠΈΠ· ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ПослС этого, Π² вашСм локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ появятся Ρ‚Π΅ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ программистами.

Код Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ области ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° образуСтся ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π΅Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ…. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π΅ΡΡ‚ΡŒ своС имя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ прСдставляСт собой Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ…Π΅Ρˆ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ sha-1 ΠΎΡ‚ содСрТимого самого ΠΊΠΎΠΌΠΌΠΈΡ‚Π°.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚Π° этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠΎ Π΄Π΅Ρ„ΠΎΠ»Ρ‚Ρƒ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π΅Π½. Π’ΠΎΡ‚ такая ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚ Π² Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΌ Π²ΠΈΠ΄Π΅

Π§Ρ‚ΠΎ Π±Ρ‹ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ просмотр Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ»Π°Π²ΠΈΡˆΡƒ q
ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ staging area ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

Π Π°Π±ΠΎΡ‡ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π΅ состояниС Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

Волько ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ это Π΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ git status ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Π½Π΅ зафиксированных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π˜Π½Π°Ρ‡Π΅ Git Π½Π΅ ΠΏΠΎΠΉΠΌΠ΅Ρ‚, ΠΊΠ°ΠΊ Π΅ΠΌΡƒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ. git status подскаТСт Π²Π°ΠΌ Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ измСнСниями Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ. Π­Ρ‚ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° слСдуСт ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΈ ΠΏΡ€ΠΈ всяких Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΡ… Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ области.

Π’Π΅Ρ‚ΠΊΠ°

Π’Π΅Ρ‚ΠΊΠ° Π² Git это ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Π΅Ρ‚ΠΊΠ° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° послСдний ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². Π’Π΅Ρ‚ΠΊΠ° Π±Π΅Ρ€Π΅Ρ‚ своС Π½Π°Ρ‡Π°Π»ΠΎ ΠΎΡ‚ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ это ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

git pull
git checkout –b

ΠŸΡ€ΠΎΡΡ‚ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ, Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°ΡΡΡŒ Π½Π° Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π²Π΅Ρ‚ΠΊΡƒ

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ‚ΠΊΠ° Π±Π΅Ρ€Π΅Ρ‚ своС Π½Π°Ρ‡Π°Π»ΠΎ Π½Π΅ ΠΎΡ‚ Π²Π΅Ρ‚ΠΊΠΈ, Π° ΠΎΡ‚ послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ.

Π’Π΅Ρ‚ΠΊΠ° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ заканчиваСтся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ merge ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ‚ΠΊΡƒ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ с ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΎΠΉ. Π’ merge ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ содСрТатся Π΄Π²Π΅ ссылки Π½Π° Π΄Π²Π° ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ‚ΠΊΡƒ.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

БущСствуСт другая ситуация ΠΏΡ€ΠΈ объСдинСнии Π²Π΅Ρ‚ΠΎΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ merge ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ Π±Π΅Π· merge commit. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ссли Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²Π΅Ρ‚ΠΎΠΊ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² merge commit с двумя ΠΏΡ€Π΅Π΄ΠΊΠ°ΠΌΠΈ ΠΎΡ‚ΠΏΠ°Π΄Π°Π΅Ρ‚. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС, ΠΏΡ€ΠΈ слиянии Π²Π΅Ρ‚ΠΎΠΊ, Git просто сдСлаСт ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΡƒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ дальшС Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ΄Ρ‚ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Ρ‚ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ эта Π²Π΅Ρ‚ΠΊΠ° Π±Ρ‹Π»Π° объСдинСна. Вакая схСма merge называСтся слияниС-ΠΏΠ΅Ρ€Π΅ΠΌΠΎΡ‚ΠΊΠ° (fast-forward merge), Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ это ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ.

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

Π’ΠΎ всСх этих случаях, послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Π΅Ρ‚ΠΊΠ° ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ΡΡ с Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΎΠΉ, всС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ сдСланныС Π² Π½Π΅ΠΉ, ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ Π² Π²Π΅Ρ‚ΠΊΡƒ с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½Π° Π±Ρ‹Π»Π° объСдинСна. Π’Π°ΠΊ ΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ merge это Π½Π΅ двунаправлСнная опСрация. Если ΡΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ Π·Π°Π΄Π°Ρ‡ΠΈ Π² мастСр Π²Π΅Ρ‚ΠΊΡƒ, Ρ‚ΠΎ Π² мастСр Π²Π΅Ρ‚ΠΊΠ΅ появится ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находился Π² Π²Π΅Ρ‚ΠΊΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ, Π° Π² Π²Π΅Ρ‚ΠΊΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈΠ· мастСр Π²Π΅Ρ‚ΠΊΠΈ. Если Π½ΡƒΠΆΠ½ΠΎ Ρ‡Ρ‚ΠΎ Π±Ρ‹ это ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Π½ΡƒΠΆΠ½ΠΎ ΡΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ мастСр Π²Π΅Ρ‚ΠΊΡƒ Π² Π²Π΅Ρ‚ΠΊΡƒ Π·Π°Π΄Π°Ρ‡ΠΈ.
Π§Ρ‚ΠΎ Π±Ρ‹ ΡΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ‚ΠΊΡƒ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π²Π½Π°Ρ‡Π°Π»Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ‚Ρƒ Π²Π΅Ρ‚ΠΊΡƒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ

ΠŸΠΎΡ‚ΠΎΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ послСдниС измСнСния сдСланныС Π² этой Π²Π΅Ρ‚ΠΊΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ²

Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

Π’Π°ΠΊ выглядит Ρ€Π°Π±ΠΎΡ‚Π° с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ Π² ΠΎΠ±Ρ‰ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚Π°Ρ….

ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½Ρ‹Π΅ схСмы Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ Π² Git

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ популярныС схСмы Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ Π² Π³ΠΈΡ‚Π΅.

Π’Π΅Ρ‚ΠΊΠΈ Π½ΡƒΠΆΠ½Ρ‹ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ программисты ΠΌΠΎΠ³Π»ΠΈ вСсти ΡΠΎΠ²ΠΌΠ΅ΡΡ‚Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ Π½Π΅ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ ΠΏΡ€ΠΈ этом. ΠŸΡ€ΠΈ создании ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Git создаСт Π±Π°Π·ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. Она называСтся master Π²Π΅Ρ‚ΠΊΠΎΠΉ. Она считаСтся Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΎΠΉ, Ρ‚.Π΅. Π² Π½Π΅ΠΉ содСрТится основной ΠΊΠΎΠ΄ прилоТСния.

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠ°Ρ схСма Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Π²Π·ΡΡ‚ΡŒΡΡ Π·Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡ΠΈ, программист Π·Π°Π²ΠΎΠ΄ΠΈΡ‚ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΎΡ‚ послСднСго Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° мастСр Π²Π΅Ρ‚ΠΊΠΈ ΠΈ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Ρƒ Π² этой Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅. Π’ Ρ…ΠΎΠ΄Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ ряд ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², послС этого тСстируСт ΠΊΠΎΠ΄ нСпосрСдствСнно Π² Π²Π΅Ρ‚ΠΊΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ. А послС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π°Π΄Π°Ρ‡Π° Ρ€Π΅ΡˆΠ΅Π½Π°, Π΄Π΅Π»Π°ΡŽΡ‚ merge ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² мастСр Π²Π΅Ρ‚ΠΊΡƒ. Π’Π°ΠΊΡƒΡŽ схСму Ρ€Π°Π±ΠΎΡ‚Ρ‹ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ с ΡŽΠ½ΠΈΡ‚ тСстами ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π΄Π΅ΠΏΠ»ΠΎΠ΅ΠΌ. Если ΡŽΠ½ΠΈΡ‚ тСсты Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ вСсь ΠΊΠΎΠ΄, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΄Π΅ΠΏΠ»ΠΎΠΉ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π²Π½Π°Ρ‡Π°Π»Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠ³ΠΎΠ½ΡΡ‚ΡŒΡΡ всС тСсты Π² Π²Π΅Ρ‚ΠΊΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ. А послС этого, Ссли ΠΎΠ½ΠΈ ΠΏΡ€ΠΎΡˆΠ»ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ merge ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΉ схСмС ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ»Π½ΠΎΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ тСстировании ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΈ.

ИмСнная Π²Π΅Ρ‚ΠΊΠ°

НСопытныС программисты заводят сСбС ΠΈΠΌΠ΅Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ всСгда Π² Π½Π΅ΠΉ. Они Ρ€Π΅ΡˆΠ°ΡŽΡ‚ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ Π·Π° Ρ€Π°Π·, ΠΈ ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π·Π°Π΄Π°Ρ‡, Π΄Π΅Π»Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ Pull запрос Ρ‡Π΅Ρ€Π΅Π· Web интСрфСйсС (ΠΎΠ± этом Ρ‡ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅). НСдостаток этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΈ нСльзя быстро ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ нСдостаток Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ‚ΠΊΠΈ Ρ‚Π°ΠΊ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ всС сильнСС Ρ€Π°ΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΈ ΠΊΠΎΠ΄ Π² Π²Π΅Ρ‚ΠΊΠ΅ программиста Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ устарССт ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мастСр Π²Π΅Ρ‚ΠΊΠΈ ΠΈ Π΅Π³ΠΎ придСтся ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ. Для этого ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΠ±ΠΎ ΡΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ мастСр Π²Π΅Ρ‚ΠΊΡƒ Π² Π²Π΅Ρ‚ΠΊΡƒ программиста, Π»ΠΈΠ±ΠΎ завСсти Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ для этого программиста ΠΎΡ‚ послСднСго Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ состояния Π² мастСр Π²Π΅Ρ‚ΠΊΠ΅. ΠŸΡ€Π°Π²Π΄Π° ΠΊ Ρ‚ΠΎΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠ°ΠΊ это ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ программист ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Π³ΠΈΡ‚ Π² достаточной ΠΌΠ΅Ρ€Π΅ Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° β€œΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽβ€ схСму Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ эта схСма ΠΈΠΌΠ΅Π΅Ρ‚ мСсто Π±Ρ‹Ρ‚ΡŒ для Π½Π΅ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Git.

Π‘Ρ…Π΅ΠΌΠ° с dev Π²Π΅Ρ‚ΠΊΠΎΠΉ

Другая схСма ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π½Π΅ΠΉ ΠΏΠΎΠΌΠΈΠΌΠΎ мастСр Π²Π΅Ρ‚ΠΊΠΈ Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ дСвСлопСрская Π²Π΅Ρ‚ΠΊΠ°, которая дСплоится Π½Π° тСстовый сСрвСр. Π’Π°ΠΊΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ dev. Π‘Ρ…Π΅ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΈ этом такая. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ Π·Π°Π²ΠΎΠ΄ΠΈΡ‚ для Π½Π΅Π΅ Π²Π΅Ρ‚ΠΊΡƒ ΠΎΡ‚ послСднСго Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ состояния Π² мастСр Π²Π΅Ρ‚ΠΊΠ΅. Когда ΠΎΠ½ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ, Ρ‚ΠΎ ΠΌΠ΅Ρ€ΠΆΠΈΡ‚ Π²Π΅Ρ‚ΠΊΡƒ Π·Π°Π΄Π°Ρ‡ΠΈ Π² dev Π²Π΅Ρ‚ΠΊΡƒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. ПослС этого, совмСстными усилиями Π·Π°Π΄Π°Ρ‡Π° тСстируСтся Π½Π° тСстовом сСрвСрС вмСстС с ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ. Если Π΅ΡΡ‚ΡŒ ошибки, Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡Ρƒ Π΄ΠΎΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ Π²Π΅Ρ‚ΠΊΠ΅ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΌΠ΅Ρ€ΠΆΠ°Ρ‚ с dev Π²Π΅Ρ‚ΠΊΠΎΠΉ. Когда тСстированиС Π·Π°Π΄Π°Ρ‡ΠΈ заканчиваСтся, Ρ‚ΠΎ Π’Π•Π’ΠšΠ£ Π—ΠΠ”ΠΠ§Π˜ ΠΌΠ΅Ρ€ΠΆΠ°Ρ‚ с мастСр Π²Π΅Ρ‚ΠΊΠΎΠΉ. Π’Π°ΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² этой схСмС Ρ€Π°Π±ΠΎΡ‚Ρ‹ с мастСр Π²Π΅Ρ‚ΠΊΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ Π·Π°Π΄Π°Ρ‡ΠΈ, Π° Π½Π΅ dev Π²Π΅Ρ‚ΠΊΡƒ. Π’Π΅Π΄ΡŒ Π² dev Π²Π΅Ρ‚ΠΊΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ измСнСния, сдСланныС Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² этой Π·Π°Π΄Π°Ρ‡Π΅, Π½ΠΎ ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΈ Π½Π΅ всС эти измСнСния ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ. ΠœΠ°ΡΡ‚Π΅Ρ€ Π²Π΅Ρ‚ΠΊΠ° ΠΈ dev Π²Π΅Ρ‚ΠΊΠ° со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°ΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ, поэтому ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΉ схСмС Ρ€Π°Π±ΠΎΡ‚Ρ‹ пСриодичСски заводят Π½ΠΎΠ²ΡƒΡŽ dev Π²Π΅Ρ‚ΠΊΡƒ ΠΎΡ‚ послСднСго Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ состояния мастСр Π²Π΅Ρ‚ΠΊΠΈ. НСдостатком этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° являСтся ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с классичСской схСмой. Π’Π°ΠΊΡƒΡŽ схСму Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ссли Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π½Π΅Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСстов ΠΈ всС тСстированиС происходит Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π½Π° сСрвСрС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π’Π°ΠΊ ΠΆΠ΅ слСдуСт ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ эти схСмы Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ собой, Ссли Π² этом Π΅ΡΡ‚ΡŒ какая-Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ.

Pull запросы

Π‘ этим понятиСм имССтся ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Π°. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² Git Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ Pull запросом. Одна ΠΈΠ· Π½ΠΈΡ…, это консольная ΠΊΠΎΠΌΠ°Π½Π΄Π° git pull. Другая это ΠΊΠ½ΠΎΠΏΠΊΠ° Π² web интСрфСйсС рСпозитория. На github.com ΠΎΠ½Π° выглядит Π²ΠΎΡ‚ Ρ‚Π°ΠΊ

git Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚

ΠŸΡ€ΠΎ эту ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ дальшС.

Если программист достаточно ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ ΠΈ отвСтствСнный, Ρ‚ΠΎ ΠΎΠ½ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сам сливаСт свой ΠΊΠΎΠ΄ Π² мастСр Π²Π΅Ρ‚ΠΊΡƒ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС программист Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Pull запрос. Pull запрос это ΠΏΠΎ сути Π΄Π΅Π»Π° запрос Π½Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ merge. Pull запрос ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ· web интСрфСйса Git, ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git request-pull. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Pull запрос создан, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ участники ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ это, ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ программист ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ внСсти Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΈ Π»ΠΈΠ±ΠΎ ΠΎΠ΄ΠΎΠ±Ρ€ΠΈΡ‚ΡŒ этот ΠΊΠΎΠ΄ Π»ΠΈΠ±ΠΎ Π½Π΅Ρ‚. Merge Ρ‡Π΅Ρ€Π΅Π· pull запросы ΠΈΠΌΠ΅Π΅Ρ‚ свои ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠœΠΈΠ½ΡƒΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ для тСсной ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… программистов Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ лишним. Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π² Π½Π΅Π΅ ΠΎΡ‚Ρ‚Π΅Π½ΠΊΠΈ Π±ΡŽΡ€ΠΎΠΊΡ€Π°Ρ‚ΠΈΠΈ.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ссли Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π΅ΡΡ‚ΡŒ Π½Π΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ программисты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, Ρ‚ΠΎ Pull запросы ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок, ΠΈ быстрСС ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ этих программистов наблюдая Π·Π° Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊΠΈΠ΅ измСнСния ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ внСсти Π² ΠΊΠΎΠ΄.

Π’Π°ΠΊ ΠΆΠ΅ Pull запросы подходят для ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ сообщСства программистов, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. Π’ этом случаС нСльзя Π·Π°Ρ€Π°Π½Π΅Π΅ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΎ ΠΊΠΎΠΌΠΏΠ΅Ρ‚Π΅Π½Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ хотят ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ΄Π΅.

ΠšΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹

ΠšΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΈ ΠΌΠ΅Ρ€Π΄ΠΆΠ΅ Π²Π΅Ρ‚ΠΎΠΊ Ссли Π² этих Π²Π΅Ρ‚ΠΊΠ°Ρ… ΠΎΠ΄Π½Π° ΠΈ Ρ‚Π° ΠΆΠ΅ строка ΠΊΠΎΠ΄Π° Π±Ρ‹Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ. Π’ΠΎΠ³Π΄Π° получаСтся, Ρ‡Ρ‚ΠΎ Git Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ сам Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈ ΠΎΠ½ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ. Π­Ρ‚ΠΎ замСдляСт Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΊΠΎΠ΄ΠΎΠΌ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Π˜Π·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этого ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ связанныС Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ программистами.
Π”Ρ€ΡƒΠ³ΠΎΠΉ способ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этого, это Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒΡΡ ΠΎ ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ стилС ΠΊΠΎΠ΄Π°. Π’ΠΎΠ³Π΄Π° программисты Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ измСнят ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ строчку станСт Π½ΠΈΠΆΠ΅.

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ совСт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅, это Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄ ΠΏΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡. Π§Π΅ΠΌ мСньшС строчСк Π²Ρ‹ помСняли, Ρ‚Π΅ΠΌ мСньшС Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ‚Ρƒ ΠΆΠ΅ ΡΠ°ΠΌΡƒΡŽ строку Ρ‡Ρ‚ΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ программист Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π² мастСр Π²Π΅Ρ‚ΠΊΠ΅ достигаСтся состояниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ½ΠΎ отмСчаСтся Ρ‚Π΅Π³ΠΎΠΌ с вСрсиСй этого состояния. Π­Ρ‚ΠΎ ΠΈ Π΅ΡΡ‚ΡŒ Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ вСрсиСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.
ДСлаСтся это Π²ΠΎΡ‚ Ρ‚Π°ΠΊ

Π§Ρ‚ΠΎ Π±Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΠΈ Π² ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

Π’Π΅Π³ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ Π΅Ρ‰Π΅ ΠΈ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ‚ΠΎ состояниС ΠΊΠΎΠ΄Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ Ρ‚Π΅Π³ΠΎΠΌ. ДСлаСтся это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ всС Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ систСмы дСплоя ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ сборки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚Π΅Π³ΠΈ для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ‚ΠΎΠ³ΠΎ состояния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ. Π’Π°ΠΊ сдСлано ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Ссли ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ послСднСй вСрсии, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ риск, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ программист Π² этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ внСсСт ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ измСнСния Π² мастСр Π²Π΅Ρ‚ΠΊΡƒ, ΠΈ ΠΌΡ‹ собСрСм Π½Π΅ Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚Π΅Π»ΠΈ. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρ‚Π°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌΠΈ состояниями ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

Если Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ этих ΠΏΡ€Π°Π²ΠΈΠ» ΠΈ β€œΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΎΠΉβ€ схСмы Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ, Ρ‚ΠΎ Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ваш Git с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ систСмами. НапримСр, с систСмой Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ с Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ packagist.org. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ сторонниС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ всякиС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ рассчитаны ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Ρ‚Π°ΠΊΡƒΡŽ схСму Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π³ΠΈΡ‚ΠΎΠΌ, ΠΈ Ссли Π²Ρ‹ сразу Π½Π°Ρ‡Π½Π΅Ρ‚Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ всС ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‚ΠΎ это ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ большим плюсом для вас Π² дальнСйшСм.

Π­Ρ‚ΠΎ ΠΎΠ±Π·ΠΎΡ€ основных ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Git. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ Git большС, Ρ‚ΠΎ я Π²Π°ΠΌ ΠΏΠΎΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ Pro Git. Π’ΠΎΡ‚ здСсь.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π±Ρ‹Π»Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° упрощСнная схСма прСдставлСния ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². Но ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Π΅Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ я Ρ€Π΅ΡˆΠΈΠ» Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ хранятся ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π½Π° дискС. Если вас Ρ‚ΠΎΠΆΠ΅ заинтСрСсуСт этот вопрос, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ± этом Π²ΠΎΡ‚ здСсь.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *