Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² 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. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

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

Git commit

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² 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 β€” способ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ хранСния ΠΈ контроля вСрсий Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. БСгодня расскаТСм ΠΎ странных словах: Β«Π±Ρ€Π°Π½Ρ‡Β», Β«ΠΊΠΎΠΌΠΌΠΈΡ‚Β», Β«ΠΏΡƒΠ»Π»-рСквСст» ΠΈ ΠΎΠ± ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… понятиях Π² Π³ΠΈΡ‚Π΅.

О Ρ‡Ρ‘ΠΌ Ρ€Π΅Ρ‡ΡŒ

Π“ΠΈΡ‚ β€” это Ρ‚Π°ΠΊΠΎΠΉ способ хранСния Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΈΡ… вСрсий. Π“ΠΈΡ‚ позволяСт ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ дополнСния ΠΈ ΠΊΠΎΠ³Π΄Π° вносил, ΠΊΠ°ΠΊ развивался ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Π² Π½Π΅Π³ΠΎ добавлял ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ.

Главная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π³ΠΈΡ‚Π° β€” ΠΎΠ½ ΠΏΠΎΠΌΠ½ΠΈΡ‚ всё, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π² Π½Π΅Π³ΠΎ внСсли, ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ строчки Π²Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ нСсколько Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, ΠΊΠΎΠ³Π΄Π° Ρ‡ΠΈΠ½ΠΈΠ»ΠΈ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

На Π±Π°Π·Π΅ Π³ΠΈΡ‚Π° Π΅ΡΡ‚ΡŒ сСрвис Β«Π“ΠΈΡ‚Ρ…Π°Π±Β». Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ:

Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ³Π΄Π° нСсколько Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ пилят совмСстный ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ своим Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ своим куском ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°. Π’ΡΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ ΠΌΠ΅ΠΆΠ΄Ρƒ собой: Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π±Ρ‹Π»ΠΎ ситуации, Ρ‡Ρ‚ΠΎ Π΄Π²Π° Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ„Π°ΠΉΠ», Π° ΠΏΠΎΡ‚ΠΎΠΌ Π·Π°Ρ‚ΠΈΡ€Π°ΡŽΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°, сами Ρ‚ΠΎΠ³ΠΎ Π½Π΅ зная.

Π­Ρ‚ΠΎ Ссли Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄ΡƒΡ‚ подробности.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ (git repository)

Π“ΠΈΡ‚-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ β€” это ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° сСрвСрС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° сСрвСрС Π“ΠΈΡ‚Ρ…Π°Π±Π°, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ).

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ программиста ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сколько ΡƒΠ³ΠΎΠ΄Π½ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. А ΠΌΠΎΠΆΠ½ΠΎ вСсти всС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π½ΠΎ Ρ‚ΠΎΠ³Π΄Π° это прСвратится Π² ΠΌΠ΅ΡˆΠ°Π½ΠΈΠ½Ρƒ. Но ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ Π½Π° ΠΌΠ΅ΡˆΠ°Π½ΠΈΠ½Ρƒ.

Π’ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ:

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π±Ρ€Π°Π½Ρ‡ (git branch)

Π‘Ρ€Π°Π½Ρ‡ β€” это Π²Π΅Ρ‚ΠΊΠ° ΠΈΠ»ΠΈ копия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ измСнСния ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΠΏΠΎΠ²Π»ΠΈΡΡŽΡ‚ Π½Π° основной ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

Π’ Π³ΠΈΡ‚-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ всСгда Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΎΠ΄ΠΈΠ½ Π±Ρ€Π°Π½Ρ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся master. Если Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π΅Ρ‚ΠΎΠΊ, Ρ‚ΠΎ всС измСнСния Π±ΡƒΠ΄ΡƒΡ‚ сразу ΠΈΠ΄Ρ‚ΠΈ Π² Π³Π»Π°Π²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Для ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΠΈΠ»ΠΈ ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² это Ρ‚Π΅Ρ€ΠΏΠΈΠΌΠΎ, Π½ΠΎ Π² любом коммСрчСском ΠΊΠΎΠ΄Π΅ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ ΠΈΠ½Π°Ρ‡Π΅: ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π²Π΅Ρ‚ΠΊΠΈ.

Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ‚ΠΊΠ° master ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выпуска Π½ΠΎΠ²Ρ‹Ρ… вСрсий ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ доступны всСм. Π’ΠΎ, Ρ‡Ρ‚ΠΎ добавляСтся Π² мастСр-Π±Ρ€Π°Π½Ρ‡, сразу становится доступно ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ.

Но ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Ρ‚Π°ΠΊΡƒΡŽ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ: ΠΌΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ запустили сайт для Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ° ΠΈ ΠΎΠ½ срочно Ρ…ΠΎΡ‡Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» со скидками. МоТно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ: ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Β«ΠΏΠΎ ΠΆΠΈΠ²ΠΎΠΌΡƒΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ сразу Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. А ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ· мастСра ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ news ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ Π² Π½Π΅ΠΉ (ΠΈ это ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° Ρ„ΠΎΡ€ΠΊ). Π’ этом случаС ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΏΠΎΠ»Π½ΡƒΡŽ копию ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈ ΠΎΠ½ΠΈ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΏΠΎΠ²Π»ΠΈΡΡŽΡ‚ Π½Π° Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ сайт. ΠœΡ‹ Π² этой Π²Π΅Ρ‚ΠΊΠ΅ ΠΏΠΈΠ»ΠΈΠΌ всё, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π΅ΠΌΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π° сСкрСтном сайтС, Π° ΠΏΠΎΡ‚ΠΎΠΌ объСдиняСм Π΅Ρ‘ с мастСром. Π­Ρ‚ΠΎ называСтся Β«ΡΠΌΡ‘Ρ€ΠΆΠΈΡ‚ΡŒ Π±Ρ€Π°Π½Ρ‡ΠΈΒ».

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (git clone)

ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ сСбС Π½Π° Тёсткий диск. Π­Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π² Π½Ρ‘ΠΌ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ.

Π§Π΅ΠΌ это отличаСтся ΠΎΡ‚ простого копирования: ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, вмСстС с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ тянСтС всю ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ вСрсий, всС Π²Π΅Ρ‚ΠΊΠΈ, всю ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹. И Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ дальшС Π±ΡƒΠ΄Π΅Ρ‚ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, благодаря этим Π΄Π°Π½Π½Ρ‹ΠΌ Π²Ρ‹ смоТСтС Ρ‚ΠΎΠΆΠ΅ ΠΈΡ… ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ.

А Ссли просто ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ с Ρ‡ΡƒΠΆΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, Ρ‚ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… историй ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… связСй Π½Π΅ сохранится. Π‘ΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Ρ„Π°ΠΉΠ»Ρ‹.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

Π§Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ Β«ΡΠΌΡ‘Ρ€ΠΆΠΈΡ‚ΡŒΒ» (git merge)

Π‘ΠΌΡ‘Ρ€ΠΆΠΈΡ‚ΡŒ (ΠΎΡ‚ Π°Π½Π³Π». merge β€” ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ, ΡΠΎΠ²ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ) β€” это ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ отправляСм всё, Ρ‡Ρ‚ΠΎ сдСлали Π² ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅, Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ. Π’Π΅ΡΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄, исправлСния ошибок, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ β€” всё это отправится Π² Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. Если ΠΆΠ΅ ΠΌΡ‹ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡƒΠ΄Π°Π»ΠΈΠΌ Π² ΠΊΠΎΠ΄Π΅, Ρ‚ΠΎ ΠΏΡ€ΠΈ объСдинСнии этот Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ Ρ‚ΠΎΠΆΠ΅ удалится ΠΈΠ· основной Π²Π΅Ρ‚ΠΊΠΈ.

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ схСма Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ (git commit)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ β€” ΠΏΡ€ΠΎΡ‰Π΅ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ сСбС Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ вСсь ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° своСй машинС. Но Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π°Π²ΠΊΠΈ ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅, ΠΈΡ… Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π­Ρ‚ΠΎ ΠΈ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚.

ΠšΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ», ΠΈ сразу нСсколько. БистСма сама Π½Π°ΠΉΠ΄Ρ‘Ρ‚, Ρ‡Ρ‚ΠΎ измСнилось Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅, ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ эти измСнСния Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Но всС эти ΠΏΡ€Π°Π²ΠΊΠΈ внСсутся Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π·Π° ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ сразу всС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π² список Ρ„Π°ΠΉΠ»Ρ‹.

НапримСр, Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ» Π³Π»Π°Π²Π½ΠΎΠΉ страницы index.html ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π² список Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½Π° сСрвСр, Π° ΠΌΠΎΠΆΠ½ΠΎ Π΅Ρ‰Ρ‘ ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ сразу style.css ΠΈ внСсти Π² этот ΠΆΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚. БистСмС всё Ρ€Π°Π²Π½ΠΎ, сколько Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ, поэтому ΠΊΠ°ΠΊ ΠΈ Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ β€” Ρ€Π΅ΡˆΠ°Π΅Ρ‚ программист.

ЕдинствСнноС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ β€” ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹ помСняли Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, чСловСчСским языком. Π₯ΠΎΡ€ΠΎΡˆΠΈΠΌ Ρ‚ΠΎΠ½ΠΎΠΌ ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ считаСтся ΠΏΠΈΡΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ: Β«Π”ΠΎΠ±Π°Π²ΠΈΠ» Ρ†Π²Π΅Ρ‚ ΠΈ стили основной ΠΊΠ½ΠΎΠΏΠΊΠΈΒ», Β«Π£Π±Ρ€Π°Π»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π·ΠΎΠ²Π° старого APIΒ», Β«Π‘Π΄Π΅Π»Π°Π»ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ SetOutOfDate()Β». Π­Ρ‚ΠΎ описаниС Π±ΡƒΠ΄ΡƒΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ.

ΠšΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ…ΠΎΡ‚ΡŒ послС ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строчки β€” вСсь вопрос Π² Ρ‚ΠΎΠΌ, насколько Π½ΡƒΠΆΠ½Π° такая дСтализация Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Но ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈ измСнСния ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ строчки ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ, Ссли ΠΎΠ½ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΡƒΡˆ- ΠΈ ΠΏΡƒΠ»Π»-рСквСсты (git push, git pull)

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· своСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° сСрвСр, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡƒΡˆ-рСквСсты. Для этого программист ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ имя Π²Π΅Ρ‚ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ свой ΠΊΠΎΠ΄, Π° сСрвСр ΠΈΡ… ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚, провСряСт ΠΈ добавляСт ΠΊ сСбС.

Иногда Π±Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ сСрвСр ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π² ΠΏΡƒΡˆ-рСквСстах, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρƒ программиста Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π±Ρ‹Π»Π° Π½Π΅Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ Π²Π΅Ρ‚ΠΊΠ°. Π—Π° Ρ‚ΠΎ врСмя, ΠΏΠΎΠΊΠ° ΠΎΠ½ писал свои ΠΏΡ€Π°Π²ΠΊΠΈ, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ программисты сдСлали нСсколько ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΠ»ΠΈ ΠΈΡ… Ρƒ сСбя ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ Π½Π° сСрвСр. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ ΠΎΠ΄Π½ΠΈΡ… эта Π²Π΅Ρ‚ΠΊΠ° ΠΎΡΡ‚Π°Π»Π°ΡΡŒ свСТСй ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ, Π° Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ½Π° устарСла. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΏΡƒΡˆ-рСквСсты ΠΈΠ· ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… Π²Π΅Ρ‚ΠΎΠΊ, Π³ΠΈΡ‚Ρ…Π°Π± просит сначала ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Ρƒ сСбя Π½Π° ΠΊΠΎΠΌΡŒΡŽΡ‚Π΅Ρ€Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡƒΠ»Π»-рСквСста.

ΠŸΡƒΠ»Π»-рСквСст Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ просто: ΠΎΠ½ скачиваСт с сСрвСра Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π²Π΅Ρ‚ΠΊΠΈ ΠΈ добавляСт ΠΊΠΎΠ΄ ΠΎΡ‚Ρ‚ΡƒΠ΄Π° Π²Π°ΠΌ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€. Иногда этот ΠΊΠΎΠ΄ вступаСт Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ΅ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ успСл ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ программист, ΠΈ Ρ‚ΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ β€” Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, какая вСрсия ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° останСтся Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, Π° Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

Π§Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚ отличаСтся ΠΎΡ‚ ΠΏΡƒΡˆ-рСквСста

ΠšΠΎΠΌΠΌΠΈΡ‚ β€” это ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ фиксируСтС измСнСния Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, ΠΊΠ°ΠΊ Π±Ρ‹ ΠΏΠΎΠ΄Π²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΈΡ‚ΠΎΠ³ своСй Ρ€Π°Π±ΠΎΡ‚Π΅.

ΠŸΡƒΡˆ β€” это ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ отправляСтС ΡΠ΄Π΅Π»Π°Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ‚ΡƒΠ΄Π°, Π³Π΄Π΅ хранится копия вашСго ΠΊΠΎΠ΄Π°.

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий такая:

Π§Ρ‚ΠΎ дальшС

Π§Ρ‚ΠΎΠ±Ρ‹ всС эти Π±Ρ€Π°Π½Ρ‡ΠΈ ΠΈ рСквСсты стали понятнСС, Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π· сдСлаСм Π²ΠΎΡ‚ Ρ‡Ρ‚ΠΎ: Π·Π°Π²Π΅Π΄Ρ‘ΠΌ ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° Π“ΠΈΡ‚Ρ…Π°Π±Π΅ ΠΈ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°ΡŽΡ‚ настоящиС программисты.

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

Π“Π°ΠΉΠ΄ ΠΏΠΎ 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. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

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

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

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

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

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

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² gitΠ‘Π»ΠΎΠΊ ΠΏΠΎΠΌΠΎΡ‰ΠΈ

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

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

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

Навигация

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

Detaching HEAD

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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