Как Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ github

ΠΊΠ°ΠΊ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git

Π£ нас Π±Ρ‹Π» Gitlab CE Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС Π½Π° нашСм сСрвСрС.
На ΠΎΠ΄Π½ΠΎΠΌ сСрвСрС Gitlab Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ 3 Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°.
Π­Ρ‚ΠΎΡ‚ Gitlab CE vm Π±Ρ‹Π» ΡƒΠ΄Π°Π»Π΅Π½ случайно! Π­Ρ‚ΠΈ 3 Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° всС Π΅Ρ‰Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ свои Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ с большим количСством Π²Π΅Ρ‚ΠΎΠΊ.
Наша стратСгия вСтвлСния Π±Ρ‹Π»Π° Ρ‚Π°ΠΊΠΎΠΉ:
Π£ нас Π±Ρ‹Π»Π° основная Π²Π΅Ρ‚ΠΊΠ° ΠΈ нСсколько Π²Π΅Ρ‚ΠΎΠΊ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ мСня Π΅ΡΡ‚ΡŒ нСсколько вопросов:

4 ΠΎΡ‚Π²Π΅Ρ‚Π°

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ пустой Ρ€Π΅ΠΏΠΎ Π² GitLab / BitBucket / GitHub.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ всС branches ΠΈ tags Π² another Ρ€Π΅ΠΏΠΎ.

N.B. Π—Π΄Π΅ΡΡŒ another прСдставляСт URL Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π΅ΠΏΠΎ.

Π― случайно ΡƒΠ΄Π°Π»ΠΈΠ» свою Π²Π΅Ρ‚ΠΊΡƒ Π½Π° «ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅». Но Ρƒ мСня всС Π΅Ρ‰Π΅ Π±Ρ‹Π»Π° локальная копия. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ я воссоздал Π²Π΅Ρ‚ΠΊΡƒ Π½Π° «происхоТдСниС»:

Когда я ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΡΡ Π½Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ копию, я ΡƒΠ²ΠΈΠ΄Π΅Π» это сообщСниС:

Π­Ρ‚ΠΎ Π²Π΅Ρ€Π½ΡƒΠ»ΠΎ Π²Π΅Ρ‚Π²ΡŒ Π² Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π΅Π²Ρ‹ΠΆΠ°Ρ‚ΠΎΠ΅ состояниС. Π§Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° мСсто происхоТдСния, я просто ΠΏΠΎΠ±Π΅ΠΆΠ°Π»

Π’Π°ΠΊ ΠΊΠ°ΠΊ ваш ΠΏΡƒΠ»ΡŒΡ‚ Π±Ρ‹Π» ΡƒΠ΄Π°Π»Π΅Π½, Ρƒ вас Π΅Ρ‰Π΅ Π½Π΅Ρ‚ источника, поэтому Π²Π°ΠΌ придСтся ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Β«ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅Β» Π²Π΅Ρ‚ΠΊΠΈ локально ΠΈ Π½Π°Π·Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠΌ исходноС имя, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒ всС Π²Π΅Ρ‚Π²ΠΈ Π½Π° ΠΏΡƒΠ»ΡŒΡ‚.

Если Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ мСстныС Ρ„ΠΈΠ»ΠΈΠ°Π»Ρ‹ просто Π²Ρ‹Π΄Π²ΠΈΠ³Π°Π»ΠΈ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹.

Π’ΠΎΡ‚ скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ„ΠΎΡ€ΠΌΠΈΡ‚ΡŒ всС Π²Π΅Ρ‚ΠΊΠΈ ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡƒΠ»ΡŒΡ‚.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ скрипт?

| grep remotes ИмСна Π²Π΅Ρ‚Π²Π΅ΠΉ: Β«remotes / origin /Β», Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это ΡƒΠ΄Π°Π»ΠΈΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΈΠΌΠ΅Π½ Π²Π΅Ρ‚ΠΎΠΊ

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

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ рСпозитория ΠΈ восстановлСниС Π΄Π°Π½Π½Ρ‹Ρ…

Π˜Π·Ρ€Π΅Π΄ΠΊΠ° Π²Π°ΠΌ потрСбуСтся Π΄Π΅Π»Π°Ρ‚ΡŒ Β«ΡƒΠ±ΠΎΡ€ΠΊΡƒΒ» β€” ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹ΠΌ, ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΎΡ‚ Π»ΠΈΡˆΠ½ΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ потСрянныС Π΄Π°Π½Π½Ρ‹Π΅. Π”Π°Π½Π½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· этих сцСнариСв.

ΠžΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΠ΅ рСпозитория

ВрСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Git выполняСт Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ сборку мусора. Π§Π°Ρ‰Π΅ всСго эта ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ‚. Однако, Ссли Ρƒ вас накопилось слишком ΠΌΠ½ΠΎΠ³ΠΎ Β«Ρ€Ρ‹Ρ…Π»Ρ‹Ρ…Β» ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Π½Π΅ Π² pack-Ρ„Π°ΠΉΠ»Π°Ρ…), ΠΈΠ»ΠΈ, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… pack-Ρ„Π°ΠΉΠ»ΠΎΠ², Git запускаСт ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ сборщик β€” git gc (здСсь Β«gcΒ» это сокращСниС ΠΎΡ‚ Β«garbage collectΒ», Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ «сборка мусора»). Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° выполняСт нСсколько дСйствий: собираСт всС Β«Ρ€Ρ‹Ρ…Π»Ρ‹Π΅Β» ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡ… Π² pack-Ρ„Π°ΠΉΠ»Ρ‹; ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ нСсколько ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΎΠ΄ΠΈΠ½ большой; удаляСт нСдостиТимыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, хранящиСся дольшС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСсяцСв.

Π‘Π±ΠΎΡ€ΠΊΡƒ мусора ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ дСйствиС, выполняСмоС gc β€” ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° ссылок Π² Π΅Π΄ΠΈΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ содСрТит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π΅Ρ‚ΠΊΠΈ ΠΈ Ρ‚Π΅Π³ΠΈ:

ВосстановлСниС Π΄Π°Π½Π½Ρ‹Ρ…

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ сбрасываСм Π²Π΅Ρ‚ΠΊΡƒ master с ΠΏΠΎΡ‚Π΅Ρ€Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½Π΅Π³ΠΎ состояния, Π° Π·Π°Ρ‚Π΅ΠΌ восстанавливаСм потСрянныС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹. Для Π½Π°Ρ‡Π°Π»Π°, Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ сСйчас выглядит история ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ сбросим Π²Π΅Ρ‚ΠΊΡƒ master Π½Π° Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚:

Π˜Ρ‚Π°ΠΊ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π²Π° послСдних ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΏΠΎ-настоящСму потСряны β€” ΠΎΠ½ΠΈ Π½Π΅ достиТимы Π½ΠΈ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ. НСобходимо Π½Π°ΠΉΡ‚ΠΈ SHA-1 Ρ…Π΅Ρˆ послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Π½Π° Π½Π΅Π³ΠΎ. Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ этот самый SHA-1, вСдь вряд Π»ΠΈ Π²Ρ‹ Π΅Π³ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠ»ΠΈ, Π΄Π°?

Π’ нашСм случаС потСрянный ΠΊΠΎΠΌΠΌΠΈΡ‚ ΡƒΠΊΠ°Π·Π°Π½ послС слов Β«dangling commitΒ» («висячий ΠΊΠΎΠΌΠΌΠΈΡ‚Β»). Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, создав Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Π½Π° этот SHA-1.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

Git β€” Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт с ΠΊΡƒΡ‡Π΅ΠΉ классных возмоТностСй, Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… способны ΡΡ‚Π°Ρ‚ΡŒ источником ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ; Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠΌΠ°Π½Π΄Π° git clone Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ вмСстС со всСй историСй, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ всС вСрсии всСх Ρ„Π°ΠΉΠ»ΠΎΠ². Π­Ρ‚ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, Ссли Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ хранится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ исходный ΠΊΠΎΠ΄, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Git Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎΠ΄ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ эффСктивно ΡΠΆΠΈΠΌΠ°Ρ‚ΡŒ ΠΈΡ…. Однако, Ссли ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π±Ρ‹Π» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ большой Ρ„Π°ΠΉΠ», ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ, ΠΊΡ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌ Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ», Π΄Π°ΠΆΠ΅ Ссли ΠΎΠ½ Π±Ρ‹Π» ΡƒΠ΄Π°Π»Ρ‘Π½ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅. Он Π±ΡƒΠ΄Π΅Ρ‚ Π² Π±Π°Π·Π΅ всСгда, просто ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ доступСн Π² истории.

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ большой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΈ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Subversion ΠΈΠ»ΠΈ Perforce Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Π² Git. Π’ этих систСмах Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ всю ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ, поэтому Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Π°ΠΌ особых послСдствий. Если ΠΏΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠΉ систСмы ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²Π°Ρ… стало ясно, Ρ‡Ρ‚ΠΎ ваш Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ большС, Ρ‡Π΅ΠΌ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ, Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π· сСйчас ΠΌΡ‹ расскаТСм, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ большиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹.

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°Π΅ΠΌ: дальнСйшиС дСйствия ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚, начиная с самого Ρ€Π°Π½Π½Π΅Π³ΠΎ, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ большой Ρ„Π°ΠΉΠ», Π±ΡƒΠ΄Π΅Ρ‚ пСрСписан. Если ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это нСпосрСдствСнно послС ΠΈΠΌΠΏΠΎΡ€Ρ‚Π°, ΠΏΠΎΠΊΠ° Π½ΠΈΠΊΡ‚ΠΎ Π΅Ρ‰Ρ‘ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π» с Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ, Ρ‚ΠΎ всё ΠΎΠΊΠ΅ΠΉ, ΠΈΠ½Π°Ρ‡Π΅ придётся ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ всСм участникам ΠΎ нСобходимости пСрСбазирования ΠΈΡ… ΠΏΡ€Π°Π²ΠΎΠΊ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π°ΡˆΠΈΡ… Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ².

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ большой Ρ„Π°ΠΉΠ» Π² тСстовый Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΡƒΠ΄Π°Π»ΠΈΠΌ Π΅Π³ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅, Π° ΠΏΠΎΡ‚ΠΎΠΌ Π½Π°ΠΉΠ΄Ρ‘ΠΌ ΠΈ ΡƒΠ΄Π°Π»ΠΈΠΌ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ· Π±Π°Π·Ρ‹. Π‘Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ большой Ρ„Π°ΠΉΠ» Π² Π½Π°ΡˆΡƒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ:

Упс, ΠΌΡ‹ нСчаянно. Нам Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ этого Ρ„Π°ΠΉΠ»Π°:

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

Π Π°Π±ΠΎΡ‚Π° с ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ рСпозиториями

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ внСсти Π²ΠΊΠ»Π°Π΄ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Git-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ рСпозиториями. Π£Π΄Π°Π»Ρ‘Π½Π½Ρ‹Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой вСрсии вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, сохранённыС Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ ΠΈΠ»ΠΈ Π΅Ρ‰Ρ‘ Π³Π΄Π΅-Ρ‚ΠΎ Π² сСти. Π£ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ доступСн для чтСния ΠΈΠ»ΠΈ для чтСния-записи. ВзаимодСйствиС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ рСпозиториями, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π½ΠΈΡ…. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ рСпозиториями Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΊΠ°ΠΊ ΡƒΠΌΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΈ ΡƒΠΌΠ΅Π½ΠΈΠ΅ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΌΠ΅Π½ΠΈΠ΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ, ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ ΠΈΡ… отслСТиваСмыми ΠΈΠ»ΠΈ Π½Π΅Ρ‚ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π’ Π΄Π°Π½Π½ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· этих Π½Π°Π²Ρ‹ΠΊΠΎΠ².

Π’ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π²Ρ‹. Π‘Π»ΠΎΠ²ΠΎ Β«ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉΒ» Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π³Π΄Π΅-Ρ‚ΠΎ Π² сСти ΠΈΠ»ΠΈ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚, Π° Π·Π½Π°Ρ‡ΠΈΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ β€” Π³Π΄Π΅-Ρ‚ΠΎ Π΅Ρ‰Ρ‘. Π Π°Π±ΠΎΡ‚Π° с Ρ‚Π°ΠΊΠΈΠΌ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стандартных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈ получСния, ΠΊΠ°ΠΊ ΠΈ с Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

Если Ρƒ вас большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΠΈΡ… всС. НапримСр, для рСпозитория с нСсколькими настроСнными ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ рСпозиториями Π² случаС совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ измСнСния ΠΎΡ‚ любого ΠΈΠ· этих ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² доступны для записи ΠΈ Π² Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ свои измСнСния, хотя Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π΅ Π΄Π°Ρ‘Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€Π°Π²Π°Ρ… доступа.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ адрСса ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория; ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΌΡ‹ рассмотрим ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Установка Git Π½Π° сСрвСр Π³Π»Π°Π²Ρ‹ 4.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… ΠΌΡ‹ ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ ΠΈ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ добавлСния ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², сСйчас рассмотрим эту ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π΅ΠΌΡƒ имя (shortname), просто Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git remote add :

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория β€” Fetch ΠΈ Pull

Как Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΡƒΠ·Π½Π°Π»ΠΈ, для получСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², слСдуСт Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ:

Данная ΠΊΠΎΠΌΠ°Π½Π΄Π° связываСтся с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ Π·Π°Π±ΠΈΡ€Π°Π΅Ρ‚ всС Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρƒ вас Π΅Ρ‰Ρ‘ Π½Π΅Ρ‚. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρƒ вас Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ссылки Π½Π° всС Π²Π΅Ρ‚ΠΊΠΈ ΠΈΠ· этого ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡΠ»ΠΈΡ‚ΡŒ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚.

Когда Π²Ρ‹ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΊΠΎΠΌΠ°Π½Π΄Π° clone автоматичСски добавляСт этот ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«originΒ». Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, git fetch origin ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ всС Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° этот сСрвСр послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π΅Π³ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ (ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ измСнСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ fetch). Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° git fetch Π·Π°Π±ΠΈΡ€Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² ваш Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π½ΠΎ Π½Π΅ сливаСт ΠΈΡ… с ΠΊΠ°ΠΊΠΈΠΌΠΈ-Π»ΠΈΠ±ΠΎ вашими Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΌΠΈ ΠΈ Π½Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎ, Π½Π°Π΄ Ρ‡Π΅ΠΌ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. Π’Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠ»ΠΈΡ‚ΡŒ эти Π΄Π°Π½Π½Ρ‹Π΅ с вашими, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹.

Начиная с вСрсии 2.27, ΠΊΠΎΠΌΠ°Π½Π΄Π° git pull Π²Ρ‹Π΄Π°Ρ‘Ρ‚ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, Ссли настройка pull.rebase Π½Π΅ установлСна. Git Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ это ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΠΎΠΊΠ° настройка Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ установлСна.

ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ (Push)

Когда Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своими Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΌΠΈ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π² ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Команда для этого дСйствия простая: git push
. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π²Π°ΡˆΡƒ Π²Π΅Ρ‚ΠΊΡƒ master Π½Π° сСрвСр origin (повторимся, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ настраиваСт ΠΎΠ±Π° этих ΠΈΠΌΠ΅Π½ΠΈ автоматичСски), Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π²Π°ΡˆΠΈΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²:

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория

Π­Ρ‚ΠΎ Π±Ρ‹Π» ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для простой ситуации ΠΈ Π²Ρ‹ навСрняка Π²ΡΡ‚Ρ€Π΅Ρ‡Π°Π»ΠΈΡΡŒ с Ρ‡Π΅ΠΌ-Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ. Однако, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Git Π±ΠΎΠ»Π΅Π΅ интСнсивно, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большСС количСство ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ git remote show :

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

Если ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ β€” Π²Ρ‹ смСнили сСрвСр ΠΈΠ»ΠΈ большС Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ Π·Π΅Ρ€ΠΊΠ°Π»ΠΎ, ΠΈΠ»ΠΈ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ пСрСстал Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния β€” Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ git remote rm :

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

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

Π¨ΠΏΠ°Ρ€Π³Π°Π»ΠΊΠ° ΠΏΠΎ Git. РСшСниС основных ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ

Как Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ github

ВосстановлСниС Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

Π’ Ρ‚ΠΎΠΌ случаС, Ссли измСнСния, внСсённыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, находятся Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ накоплСния, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ… ΠΊ Π²Π΅Ρ‚ΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git stash apply. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ git diff β€” эта ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ различия. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‚Π΅ΠΌ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Если сущСствуСт Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ накоплСния, Π½Π°ΠΉΡ‚ΠΈ Π½ΡƒΠΆΠ½ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

git stash list Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, воспользовавшись Π΅Π³ΠΎ индСксом:

НСобходимо ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ отсчёт индСксов вСдётся ΠΎΡ‚ нуля.

ВосстановлСниС ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ Ρ‚Π΅Π³Π°

Π’ Ρ‚ΠΎΠΌ случаС, Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ случайно ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ‚Π΅Π³, Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ с Π΅Π³ΠΎ поиска:

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½Ρ‹ΠΉ Ρ‚Π΅Π³ Π½Π°ΠΉΠ΄Π΅Π½, Π΅Π³ΠΎ слСдуСт Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ:

ВосстановлСниС ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°

Если Π²Ρ‹ случайно ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ», Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ быстро Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ:

Если трСбуСтся Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈΠ· ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ истории ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², слСдуСт ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ…Π΅Ρˆ Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

ВосстановлСниС ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠΌΠ°Π½Π΄Ρ‹ git reflog ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ…Π΅Ρˆ (SHA1) послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π² ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ этот Ρ…Π΅Ρˆ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅:

ПослС этого Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

ИзмСнСниС сообщСния ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π³ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ИзмСнСниС сообщСния ΠΊΠΎΠΌΠΌΠΈΡ‚Π° послС Π΅Π³ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: подобная насильная ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈΠ· внСшнСй Π²Π΅Ρ‚ΠΊΠΈ, Ссли с Π½Π΅ΠΉ Π΄Π°Π²Π½ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ синхронизации, ΡΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ.

ИспользованиС алиасов ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС

Устали ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ git status? Π­Ρ‚ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ простой алиас, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ быстрСС Π²Π±ΠΈΠ²Π°Ρ‚ΡŒ Π² git.

β€” Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ git st

МоТно ΠΏΠΎΠΉΡ‚ΠΈ дальшС ΠΈ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ алиасы Π±ΠΎΠ»Π΅Π΅ слоТным ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ алиас git logme Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ всС наши ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹.

ΠšΠΎΠΌΠΌΠΈΡ‚ Π² Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ

НуТно ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Π·Π°Π±Ρ‹Π»ΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ:

А Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅:

. ΠΈ Β«ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒΡΡΒ» Π΄ΠΎ послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ.

Π§Ρ‚ΠΎΠ±Ρ‹ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git log ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ…Π΅Ρˆ (SHA1) послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ.. НапримСр, это a31a45c.

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ отправлял ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π²ΠΎ врСмя выполнСния Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС эти измСнСния Π±ΡƒΠ΄ΡƒΡ‚ потСряны!

ОбновлСниС ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ подмодуля

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

ΠžΡ‚ΠΊΠ°Ρ‚ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ Π² истории

Если вас Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ бСспокоят измСнСния Π² локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Β«ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒΡΡΒ» ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ Π² истории с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° установит HEAD Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ…Π΅ΡˆΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°.

ΠžΡ‚ΠΌΠ΅Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π΄ΠΎ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

Если Π²Ρ‹ сдСлали ΠΊΠΎΠΌΠΌΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ впослСдствии понадобилось ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡΡ‚Π΅Ρ€Π΅Ρ‚ΡŒ, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π° git reset.

Π‘ΡƒΠ΄ΡŒΡ‚Π΅ остороТны ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ измСнСния Π²Π°ΡˆΠΈΡ… Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ потСряны.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ сообщСниС ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅: :

ΠžΡ‚ΠΌΠ΅Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ‚Π° послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΅Π³ΠΎ Π² master-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Рассмотрим ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΡ‚Π΅Ρ€Π΅Ρ‚ΡŒ ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ. ΠžΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΅Π³ΠΎ Ρ…Π΅ΡˆΠ°:

ΠžΡ‚ΠΌΠ΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ послС послСднСго:

ΠŸΡ€ΠΎΡΡ‚Π°Ρ ΠΎΡ‚ΠΌΠ΅Π½Π° послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π°:

ΠžΡ‚ΠΌΠ΅Π½Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΌ способом ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ для Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΠ°ΠΏΠΎΠΊ являСтся восстановлСниС состояния послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ это ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ:

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ всСх ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°

АргумСнт β€”follow позволяСт вывСсти всС измСнСния Π½Π°Π΄ Ρ„Π°ΠΉΠ»ΠΎΠΌ, Π΄Π°ΠΆΠ΅ Ссли Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΠ½ Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡ числа ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΎΡ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ участника

Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ, сколько ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² сдСлал ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ участник ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹?

ΠžΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, содСрТащиС ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹

Π£Π·Π½Π°Ρ‚ΡŒ, Π² ΠΊΠ°ΠΊΠΈΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ… содСрТатся ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

Она ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ список ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡƒΠ΄Π°Π»ΡΠ»ΠΈΡΡŒ Ρ„Π°ΠΉΠ»Ρ‹.

ΠžΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΏΠΎ Π°Π²Ρ‚ΠΎΡ€Ρƒ

Π§Ρ‚ΠΎΠ±Ρ‹ вывСсти список ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ Π°Π²Ρ‚ΠΎΡ€Ρƒ, слСдуСт Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° всСх скрытых состояний

ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ всС скрытыС состояния ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ локальной ΠΈ ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠΌ, Ρƒ вас Π΅ΡΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΠ° Β«fix-bug25Β», ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π² Β«hotfix-usersΒ». ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ:

А Π·Π°Ρ‚Π΅ΠΌ β€” ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ: ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π΅Ρ‘ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ нСльзя, поэтому Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΅Ρ‘ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ, ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ ΡƒΠΆΠ΅ с Π½ΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ этим ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°ΠΌ, слСдуСт ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π½ΠΈΠΊΡ‚ΠΎ ΠΈΠ· Ρ‡Π»Π΅Π½ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с этой Π²Π΅Ρ‚ΠΊΠΎΠΉ! УдаляСм Π²Π΅Ρ‚ΠΊΡƒ: git push origin :fix-bug25

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅ΠΌ Π΅Ρ‘ с Π½ΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ: git push origin hotfix-users

ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π΅Π³Π°

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚Π΅Π³:

ΠŸΠ΅Ρ€Π΅ΡΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π½ΠΎ ΠΏΡ€ΠΈ этом ΠΆΠ΅Π»Π°Π΅Ρ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ локально, осущСствитС ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ запуститС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Она ΡƒΠ΄Π°Π»ΠΈΡ‚ ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· Π·ΠΎΠ½Ρ‹ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² (staging area). Π—Π°Ρ‚Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ измСнСния.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ локально, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Если трСбуСтся ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΡƒΡ‚ΡŒ, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

Поиск ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ сообщСния Π²ΠΎ всСх ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ…

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ тСкст сообщСния ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ рСгулярному Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ, Π½ΡƒΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

ΠŸΠΎΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ», ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½Π½Ρ‹ΠΉ

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‰ΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½Π½Ρ‹Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

Π—Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ git commit, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ измСнСния.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ всСх Π½Π΅ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Ρ‰Ρ‘ Π½Π΅ Π±Ρ‹Π»ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π΅Ρ‚ΠΊΠΈ, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ:

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ старой Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ Ρ„Π°ΠΉΠ»Π°

БущСствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ содСрТимоС Ρ„Π°ΠΉΠ»Π° Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ. Для этого Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ локальной Π²Π΅Ρ‚ΠΊΠΈ для ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСдактирования

Если Π²Ρ‹ создали Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ, ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³Π»ΠΈ с Π½Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ΠΈ Ρ‚ΠΎΠΆΠ΅ смогут Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² эту Π²Π΅Ρ‚ΠΊΡƒ.

Бброс локальной Π²Π΅Ρ‚ΠΊΠΈ Π΄ΠΎ состояния ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ

Π’ Ρ‚ΠΎΠΌ случаС, Ссли ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ, ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π΄ΠΎ состояния ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΡƒΡ… простых ΠΊΠΎΠΌΠ°Π½Π΄.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ свСТиС обновлСния ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ:

А Π·Π°Ρ‚Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ git, Ρ‡Ρ‚ΠΎ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ слСдуСт Β«ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒΒ» Π΄ΠΎ состояния ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ:

Π‘ΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ с master-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ послСдниС измСнСния Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ master (ΠΈΠ»ΠΈ с любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΎΠΉ, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Β«ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ» Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π΄ Π²Π΅Ρ‚ΠΊΠΎΠΉ foobar:

А Π·Π°Ρ‚Π΅ΠΌ осущСствляСтС Β«ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β»:

ПослС этого Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ origin ΠΈΠ· master. ПослС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² процСсс ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git rebase β€”continue. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ своСй Π²Π΅Ρ‚ΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Π΅Ρ‘ слияниС (merge) с Π³Π»Π°Π²Π½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ.

БлияниС Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ с Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΎΠΉ

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ прямо Π² процСссС стандартного слияния (merge). Π’Π°ΠΌ стоит ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ слияний ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„Π»Π°Π³ β€”no-ff, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ no fast forward.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Π²Π΅Ρ‚ΠΊΡƒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄ΡƒΡ‚ Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ измСнСния, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ Π² Π΅Ρ‘ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ запуститС процСсс:

Π—Π°Ρ‚Π΅ΠΌ появится сообщСниС ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ merge X into Y branch, послС Ρ‡Π΅Π³ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ смСло Π·Π°ΠΏΡƒΡˆΠΈΡ‚ΡŒ вашС слияниС.>

Π‘ΠΎΠ²ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

Если Π΅ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² совмСщСнии Π΄Π²ΡƒΡ… послСдних ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ПослС Π΅Ρ‘ Π²Π²ΠΎΠ΄Π° появятся инструкции ΠΏΠΎ Π²Ρ‹Π±ΠΎΡ€Ρƒ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². Π’ Ρ‚ΠΎΠΌ случаС, Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ всС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ с ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΡΡ‚Π°Ρ€Π΅ΠΉΡˆΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Ρ‚ΠΎ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ pick, Π° для всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π±ΡƒΠΊΠ²Ρƒ Π½Π° f. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ здСсь

Π‘ΠΎΠ²ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для добавлСния Π² Π²Π΅Ρ‚ΠΊΡƒ Ρ€Π΅Π»ΠΈΠ·Π°

Если Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, Ρ‚ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Π²Π΅Ρ‚ΠΊΠ΅ Ρ€Π΅Π»ΠΈΠ·Π°, поэтому история Π²Π΅Ρ‚ΠΊΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ останСтся Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ.

НиТС прСдставлСн ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ эффСкта:

Π’ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ останСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Π²Π΅Ρ‚ΠΊΠ΅ Ρ€Π΅Π»ΠΈΠ·Π°, Π° история ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Π΅Ρ‚ΠΊΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ останСтся Π½Π΅Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚ΠΎΠΉ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ с измСнСниями Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ

Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² Π²Π΅Ρ‚ΠΊΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ, ΠΈ лишь ΠΏΠΎΠ·Π΄Π½Π΅Π΅ Π²ΡΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ создали Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, Π΅ΡΡ‚ΡŒ способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это ΡƒΠΆΠ΅ Π² процСссС:

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° пСрСнСсёт Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π² Π½ΠΎΠ²ΡƒΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Β«Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒΒ».

Π£Π±Ρ€Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π°

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ ошибкС Ρ„Π°ΠΉΠ» ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π°, Π½ΡƒΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ простой ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ внСшнСй Π²Π΅Ρ‚ΠΊΠΈ

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ, Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ нСотслСТиваСмых Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΠ°ΠΏΠΎΠΊ

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ нСотслСТиваСмыС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ ΠΈΠ· Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Π§Ρ‚ΠΎΠ±Ρ‹ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΡ…:

Подсказка: Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ лишними, ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ… нСпосрСдствСнным ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ, Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅:

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ старых Π²Π΅Ρ‚ΠΎΠΊ, стёртых ΠΈΠ· внСшнСго рСпозитория

Если Π²Π΅Ρ‚ΠΊΠ° ΡƒΠ΄Π°Π»Π΅Π½Π° ΠΈΠ· внСшнСго рСпозитория, Π΅Ρ‘ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚Π΅Ρ€Π΅Ρ‚ΡŒ ΠΈΠ· локального рСпозитория с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

Она ΡƒΠ΄Π°Π»ΠΈΡ‚ ΡΡ‚Π°Ρ€ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ-Π²Π΅Ρ‚ΠΊΠΈ, которая ΡƒΠΆΠ΅ Π±Ρ‹Π»Π° стёрта ΠΈΠ· внСшнСго рСпозитория, Π½ΠΎ всё Π΅Ρ‰Ρ‘ доступна локально Π² remotes/Π½Π°Π·Π²Π°Π½ΠΈΠ΅-ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ-Π²Π΅Ρ‚ΠΊΠΈ.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠΈΠ· git с сохранСниСм Π΅Π³ΠΎ локальной ΠΊΠΎΠΏΠΈΠΈ

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈΠ· git, Π½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ локально Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Π‘Π΅Π· Π“ΠΈΡ‚Π° ΠΈ Тизнь Π½Π΅ Ρ‚Π°

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ Π² Git Π½Π° курсах HTML Academy. ΠœΡ‹ расскаТСм всё, Ρ‡Ρ‚ΠΎ Π·Π½Π°Π΅ΠΌ сами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΏΡ€ΠΎΠΊΠ°Ρ‡Π°Π»ΠΈ Π½Π°Π²Ρ‹ΠΊΠΈ Π² Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅.

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

Бинхронизация Π² Git

Π’ систСмС SVN ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, слуТащий Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠΌ связи для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². БовмСстная Ρ€Π°Π±ΠΎΡ‚Π° вСдСтся ΠΏΡƒΡ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π½Π°Π±ΠΎΡ€ΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ копиями Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ. Однако модСль распрСдСлСнной совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Git ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ копию рСпозитория со своСй локальной историСй ΠΈ структурой Π²Π΅Ρ‚ΠΎΠΊ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ дСлятся Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π½Π°Π±ΠΎΡ€Π°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π° сСриями ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Π² Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Git позволяСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ рСпозиториями Ρ†Π΅Π»Ρ‹Π΅ Π²Π΅Ρ‚ΠΊΠΈ.

git remote

Команда git remote позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ рСпозиториям. Π£Π΄Π°Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ скорСС ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ, Ρ‡Π΅ΠΌ Π½Π° прямыС ссылки Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Они слуТат ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ URL-адрСс, Π° Π½Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ доступ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

НапримСр, Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ Π΄Π²Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ· вашСго рСпозитория ΠΊ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Π½ΠΈΡ… ΠΏΠΎ ΠΈΡ… ΠΏΠΎΠ»Π½Ρ‹ΠΌ URL-адрСсам, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Git Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ярлыки origin ΠΈ john.

Как Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ github

ΠžΠ±Π·ΠΎΡ€ использования git remote

По сути, ΠΊΠΎΠΌΠ°Π½Π΄Π° git remote β€” это интСрфСйс для управлСния списком записСй ΠΎΠ± ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΡ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хранятся Π² Ρ„Π°ΠΉΠ»Π΅ /.git/config рСпозитория. Для просмотра Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ состояния списка ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Git

Бписок Π²Π°ΡˆΠΈΡ… ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ рСпозиториям.

Аналогично ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π²Ρ‹ΡˆΠ΅, Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ URL-адрСс ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Git

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

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ. ПослС добавлСния ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория имя <name> ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ярлыка для адрСса <url> Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… Git.

ΠžΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅ git remote

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

Π£Π΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ origin

Π’ процСссС клонирования с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git clone автоматичСски создаСтся ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ исходному Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ (Ρ‚Π°ΠΊΠΎΠ΅ соСдинСниС называСтся origin). Π­Ρ‚ΠΎ позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΠΌ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ копию Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ рСпозитория, Π»Π΅Π³ΠΊΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π²Ρ‹ΡˆΠ΅ΡΡ‚ΠΎΡΡ‰ΠΈΠ΅ измСнСния ΠΈΠ»ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹. ИмСнно поэтому Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° основС Git Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ свой Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ origin.

URL-адрСса Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

Git ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы ссылки Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π”Π²Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ простых способа доступа ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ: ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ HTTP ΠΈ SSH. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP β€” простой способ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹ΠΉ доступ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅.

Однако HTTP-адрСс, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π½Π΅ позволяСт ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ (Π² любом случаС Π²Ρ‹ Π½Π΅ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡƒΡŽ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ push). Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ доступ для чтСния ΠΈ записи слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» SSH:

Π’Π°ΠΌ понадобится лишь Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ SSH Π½Π° хост-машинС, Π° Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ Git ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ доступ Ρ‡Π΅Ρ€Π΅Π· SSH ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. НСобходимыС URL-адрСса ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ соврСмСнными бСзопасными Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ для хостинга ΠΎΡ‚ сторонних ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Bitbucket.com.

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ git remote

Π’Ρ‹Π²ΠΎΠ΄ URL-адрСсов для записи ΠΎΠ± ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

УдаляСт ΠΈΠ· рСпозитория <NAME> всС Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Π²Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π² ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

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

Доступа ΠΊ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ рСпозиториям Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² позволяСт вСсти ΡΠΎΠ²ΠΌΠ΅ΡΡ‚Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ рСпозитория. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π½Π°Π΄ большим ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Π° git remote ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ€Π°Π½Π΅Π΅ сохранСнныС ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ рСпозиториям. БоздаСтся однострочный список Π·Π°ΠΊΠ»Π°Π΄ΠΎΠΊ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π².

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория

Для получСния ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ git remote ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ show. Π’Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ список Π²Π΅Ρ‚ΠΎΠΊ, связанных с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… для извлСчСния (fetch) ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ (push).

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Git

ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Git

ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

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

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

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