Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Π“ΠΈΡ‚-словарик для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… программистов

ΠœΡ‘Ρ€ΠΆΠΈΠΌ Π±Ρ€Π°Π½Ρ‡ΠΈ ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΠΌ рСквСсты

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

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

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

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

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

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

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

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

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

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

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

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

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

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

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

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

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

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

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

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

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

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

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

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

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

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

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

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

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Git, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² всСго ΠΎΠ΄Π½Ρƒ Π³Π»Π°Π²Ρƒ, Ρ‚ΠΎ эта Π³Π»Π°Π²Π° β€” Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ. Π—Π΄Π΅ΡΡŒ рассмотрСны всС Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π²Π°ΠΌ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π·Π°Π΄Π°Ρ‡, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Git. ПослС прочтСния этой Π³Π»Π°Π²Ρ‹ Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ продСмонстрируСм Π²Π°ΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π² Git ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΈΡ… Π³Ρ€ΡƒΠΏΠΏ, ΠΊΠ°ΠΊ быстро ΠΈ просто ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹Π΅ измСнСния, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ измСнСния ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ (commit), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ (push) ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ (pull) измСнСния Π²/ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ (remote) рСпозитория.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Git-рСпозитория

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π΄Π²ΡƒΡ… способов:

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·ΡΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² настоящСС врСмя Π½Π΅ находится ΠΏΠΎΠ΄ вСрсионным ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ, ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git, Π»ΠΈΠ±ΠΎ

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git ΠΈΠ· любого мСста.

Π’ ΠΎΠ±ΠΎΠΈΡ… случаях Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ Git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ рСпозитория Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅

Если Ρƒ вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ находится ΠΏΠΎΠ΄ вСрсионным ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ Git, Ρ‚ΠΎ для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Π½Π΅Π³ΠΎ. Если Π²Ρ‹ Π½Π΅ Π΄Π΅Π»Π°Π»ΠΈ этого Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‚ΠΎ для Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм это выглядит ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ:

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

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ вСрсионный ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ пустого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°), Π²Π°ΠΌ стоит Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π² индСкс ΠΈ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π”ΠΎΠ±ΠΈΡ‚ΡŒΡΡ этого Π²Ρ‹ смоТСтС запустив ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git add нСсколько Ρ€Π°Π·, ΡƒΠΊΠ°Π·Π°Π² индСксируСмыС Ρ„Π°ΠΉΠ»Ρ‹, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² git commit :

ΠœΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ эти ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΅ΡΡ‚ΡŒ Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с отслСТиваСмыми Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ.

ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ рСпозитория

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

Настройка рСпозитория

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

Π’ Π΄Π°Π½Π½ΠΎΠΌ руководствС ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ основныС вопросы:

По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ модуля Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΌΠ΅Ρ‚ΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ основныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Git, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°, ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ соСдинСниС с сСрвисом хостинга Git (Bitbucket).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git?

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git β€” это Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’ Π½Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ вСрсии ΠΊΠΎΠ΄Π° для доступа ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости.

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ рСпозитория: git init

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ вСрсии ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с использованиСм Π½ΠΎΠ²ΠΎΠ³ΠΎ рСпозитория Git

Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ git init ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ исполнСнию описанной Π²Ρ‹ΡˆΠ΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ этого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ рСпозитория: git clone

ΠšΠΎΠΌΠ°Π½Π΄Ρƒ git clone Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ для создания ΠΊΠΎΠΏΠΈΠΈ (клонирования) ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория. Π’ качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git clone пСрСдаСтся URL-адрСс рСпозитория. Git ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сСтСвых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² URL-адрСсов. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ SSH-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Git. URL-адрСса SSH Π² Git ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаблон: git@HOSTNAME:USERNAME/REPONAME.git

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± использовании ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git clone ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ… URL-адрСсов Π² Git см. Π½Π° страницС git clone.

Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ: git add ΠΈ git commit

«тСст для обучСния Ρ€Π°Π±ΠΎΡ‚Π΅ с GitΒ»

По Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Ρ„Π°ΠΉΠ» CommitTest.txt добавится ΠΊ истории рСпозитория, ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ измСнСния Π² Ρ„Π°ΠΉΠ»Π΅.

БовмСстная Ρ€Π°Π±ΠΎΡ‚Π° Π² Ρ€Π°Π·Π½Ρ‹Ρ… рСпозиториях: git push

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

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ совмСстная Ρ€Π°Π±ΠΎΡ‚Π° Π² Git ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ отличаСтся ΠΎΡ‚ совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² SVN. Π’ SVN Ρ€Π°Π±ΠΎΡ‚Π° строится Π½Π° ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ ΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉ, Π° модСль совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Git основана Π½Π° взаимодСйствии ΠΌΠ΅ΠΆΠ΄Ρƒ рСпозиториями. ВмСсто Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ Π² Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ SVN Π² Git Π²Ρ‹ отправляСтС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ рСпозитория Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡ… Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ.

Π’Ρ‹ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡΠΎΠ±ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ рСпозиториям Git. НапримСр, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠ² ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Git ΠΊΠ°ΠΊ Β«Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉΒ», Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ воспроизвСсти Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ процСсс с использованиСм Git. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ‰ΠΈΡ… договорСнностСй, ΠΎΠ½ Π½Π΅ встроСн Π² саму систСму контроля вСрсий.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ чистых ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²

Если Π²Ρ‹ использовали ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git init для создания рСпозитория с нуля, Ρƒ вас Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ измСнСния. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ для ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ рСпозитория ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° сСрвис Git-хостинга (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Bitbucket) ΠΈ создаСт Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Ρ‚Π°ΠΌ. Π”Π°Π½Π½Ρ‹ΠΉ сСрвис прСдоставит URL-адрСс Git, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git. ПослС этого ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git push Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° хостингС. ПослС создания ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌ хостингС Π²Π°ΠΌ понадобится ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² привязку. Π­Ρ‚ΠΎΡ‚ процСсс описываСтся Π΄Π°Π»Π΅Π΅ Π² руководствС ΠΏΠΎ установкС ΠΈ настройкС.

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ настройка: git config

Помимо конфигурирования URL-адрСса ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Git, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈΠ»ΠΈ элСктронный адрСс. Команда git config позволяСт Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈΠ½ΡΡ‚Π°Π»Π»ΡΡ†ΠΈΡŽ Git (ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ) ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ настройки: ΠΎΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ Π΄ΠΎ Π΅Π³ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠΉ ΠΈ характСристик рСпозитория. НиТС пСрСчислСны распространСнныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Git Ρ…Ρ€Π°Π½ΠΈΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π² Ρ‚Ρ€Π΅Ρ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ…, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² (Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ), ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ) ΠΈΠ»ΠΈ всСй систСмы (систСмный):

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°Π΄Π°Π΅Ρ‚ имя Π°Π²Ρ‚ΠΎΡ€Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для всСх ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°Π΄Π°Π΅Ρ‚ адрСс элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹ Π°Π²Ρ‚ΠΎΡ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для всСх ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ быстрыС клавиши для ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Git. Π­Ρ‚ΠΎ мощная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ для создания собствСнных ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ клавиш для часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ Git. НиТС ΠΏΠΎΠΊΠ°Π·Π°Π½ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Π’ тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» глобальной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ для рСдактирования Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство ΠΏΠΎ настройкС тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° для Git см. Π½Π° страницС Git config.

ПояснСния

Git Ρ…Ρ€Π°Π½ΠΈΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π² Ρ‚Ρ€Π΅Ρ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ…, Ρ‡Ρ‚ΠΎ позволяСт ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ всСй систСмы.

Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² этих Ρ„Π°ΠΉΠ»Π°Ρ…, ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‚, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ настройки ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ настройки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ систСмныС настройки. Если Π²Ρ‹ ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚Π΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· этих Ρ„Π°ΠΉΠ»ΠΎΠ², Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π΅Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅:

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

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

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ΡΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Git с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git config

Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΉ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ алиасы ΠΏΠΎ Ρ‚ΠΈΠΏΡƒ SVN

РСзюмС

ΠœΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git двумя способами: git init ΠΈ git clone. Π­Ρ‚ΠΈΠΌ руководством ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ нСобходимости управлСния исходным ΠΊΠΎΠ΄ΠΎΠΌ ПО ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ΠΎΠΌ, ΠΏΡ€ΠΈ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ трСбуСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ€ΡΠΈΠΎΠ½Π½ΠΎΡΡ‚ΡŒ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π»ΠΈ прСдставлСны ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git add, git commit, git push ΠΈ git remote ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ простыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΡ… использования.

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

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

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

GitHub

GitHub β€” это сСрвис для совмСстной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ хостинга ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². C ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GitHub Π½Π°Π΄ ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ количСство программистов ΠΈΠ· Π»ΡŽΠ±Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ ΠΌΠΈΡ€Π°. Π’ GitHub Π΅ΡΡ‚ΡŒ систСма контроля (управлСния) вСрсий Git: сСрвис позволяСт ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ измСнСния ΠΊΠΎΠ΄Π° Π»ΡŽΠ±Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ Π΄ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Π’ Ρ†Π΅Π»ΠΎΠΌ GitHub β€” это ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² написании ΠΊΠΎΠ΄Π° ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ своС ΠΏΠΎΡ€Ρ‚Ρ„ΠΎΠ»ΠΈΠΎ.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π² GitHub

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π² GitHub хранится Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ (repository) β€” ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ всСх ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ создаваСмого ΠΊΠΎΠ΄Π°. Если Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Π² ΠΎΠ΄ΠΈΠ½ΠΎΡ‡ΠΊΡƒ β€” Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Если Π² вашСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ нСсколько Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² β€” ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ создатСля ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π’Π½ΡƒΡ‚Ρ€ΠΈ рСпозитория измСнСния ΠΊΠΎΠ΄Π° хранятся Π² Π²ΠΈΠ΄Π΅ Π²Π΅Ρ‚ΠΎΠΊ ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ².

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

ΠšΠΎΠΌΠΌΠΈΡ‚ (commit) β€” основной ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ хранятся всС измСнСния ΠΊΠΎΠ΄Π° Π·Π° ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ. По сути, это список со всСми Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ измСнСниями ΠΈ ссылка Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π΅ΡΡ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹: имя, Π΄Π°Ρ‚Π° создания, Π°Π²Ρ‚ΠΎΡ€ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ вСрсии (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«Π‘ΠΎΠ·Π΄Π°Π» страницу courses.htmlΒ» ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ сайтов с видСокурсами).

Π’Π΅Ρ‚ΠΊΠ° (branch) β€” ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΊΠΎΠΌΠΌΠΈΡ‚ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ измСнСниями. НапримСр, Π΄Π²Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° взяли ΠΊΠΎΠΌΠΌΠΈΡ‚, ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… сдСлал свои измСнСния Π² ΠΊΠΎΠ΄Π΅, создав ΠΏΠΎ Π½ΠΎΠ²ΠΎΠΌΡƒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ (Β«Π‘ΠΎΠ·Π΄Π°Π» страницу coursΠ΅s.html c Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚ΠΎΠΌΒ» ΠΈ Β«Π‘ΠΎΠ·Π΄Π°Π» страницу courses.html со свободным доступом Π½Π° курсы»). Π’Π°ΠΊ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ появились Π΄Π²Π΅ Π²Π΅Ρ‚ΠΊΠΈ с Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, Π½Π°Π΄ ΠΊΠ°ΠΊΠΈΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ Π΅ΠΌΡƒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ дальшС.

Основной Π²Π΅Ρ‚ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, считаСтся Π²Π΅Ρ‚ΠΊΠ° main ΠΈΠ»ΠΈ master β€” Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Π΅ Π²Π΅Ρ‚ΠΊΠΈ Π½Π° Π΅Π΅ основС. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ количСство Π²Π΅Ρ‚ΠΎΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ измСнСния, Π½Π΅ мСшая основному ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ.

БлияниС Π²Π΅Ρ‚ΠΎΠΊ

Часто Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄Π΅Π»Π°ΡŽΡ‚ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния ΠΊΠΎΠ΄Π°. НапримСр, ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ внСшним Π²ΠΈΠ΄ΠΎΠΌ сайта, Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ занимаСтся Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π½Π° Π½Π΅ΠΌ. По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²Π΅Ρ‚ΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π² ΠΎΠ΄Π½Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ со всСми внСсСнными Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ измСнСниями.

Для этого Π² Git ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ pull request (pr). Pull request β€” это заявка Π½Π° слияниС ΠΊΠΎΠ΄Π° ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… Π²Π΅Ρ‚ΠΎΠΊ. Π’ процСссС слияния Git создаст ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ всС измСнСния Π² Ρ„Π°ΠΉΠ»Π΅ ΠΊΠΎΠ΄Π°: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π΄ΠΎ развСтвлСния строки подсвСтятся Π·Π΅Π»Π΅Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ, ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ β€” красным. Π’Π°ΠΊ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° увидят, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ с ΠΊΠΎΠ΄ΠΎΠΌ послС совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ. ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ слияниСм (merge) всС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ измСнСния ΠΊΠΎΠ΄Π° (code review) ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΈΡ….

Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ с нуля Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°ΠΉΡ‚Π΅ с Git ΠΈ ΡΡ‚Π°Π½ΡŒΡ‚Π΅ вострСбованным спСциалистом. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ скидка 5% ΠΏΠΎ ΠΏΡ€ΠΎΠΌΠΎΠΊΠΎΠ΄Ρƒ BLOG.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ pull request

Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим Π½Π° процСсс со стороны Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Π½ΠΎΠ²Ρ‹ΠΉ pull request. Π’Π»Π°Π΄Π΅Π»ΡŒΡ†Ρƒ Π½ΡƒΠΆΠ½ΠΎ Π΅Π³ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ sme-review с master.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π²ΡŒΡŽ ΠΊΠΎΠ΄Π°, Π³Π΄Π΅ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° слияниС Π² Π³Π»Π°Π²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π²ΡŒΡŽ ΠΊΠΎΠ΄Π°, Π³Π΄Π΅ Π½Π΅Ρ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π° слияниС

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

РСвью кода

РСвью ΠΊΠΎΠ΄Π° (code review) β€” процСсс обсуТдСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π° послС совмСстного создания ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ слияниСм. Π’ Ρ€Π΅Π²ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ строкам с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Π° Π² случаС ошибок ΠΈΠ»ΠΈ ΡƒΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ ΠΊΠΎΠ΄Π°.

ПослС Ρ€Π΅Π²ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ измСнСния (функция approve). Git ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ Π²Π΅Ρ‚ΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ merge ΠΈ пСрСнСсСт созданный ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ main. Π’ истории ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² останСтся ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ слиянии Π²Π΅Ρ‚ΠΎΠΊ.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Как ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² GitHub

GitHub β€” самый популярный сСрвис для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΈ хранСния ΠΏΠΎΡ€Ρ‚Ρ„ΠΎΠ»ΠΈΠΎ собствСнных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². ΠΠ°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Ρ€Π°Π±ΠΎΡ‚Π΅ с Git ΠΈ GitHub Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ. Π’ΠΎΡ‚ нСсколько ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ GitHub:

ΠžΡΠ²ΠΎΠΉΡ‚Π΅ ΠΏΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΡŽ с нуля Π·Π° 14 мСсяцСв.

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Git (читаСтся ΠΊΠ°ΠΊ Β«Π³ΠΈΡ‚Β») β€” это систСма контроля вСрсий, которая ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ„Π°ΠΉΠ»Π°Ρ…. Git ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ программисты для совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ.

Git β€” систСма контроля вСрсий

Π’ самом простом Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий β€” это сохранСниС Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ сСрии ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Π΄Π°Ρ‚Π°ΠΌΠΈ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ, ΠΈΠ»ΠΈ Ρ€Π΅ΠΆΠΈΠΌ отслСТивания исправлСний Π² тСкстовых Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ….

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ часто Π±Ρ‹Π²Π°Π΅Ρ‚ Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ вСрсии ΠΊΠΎΠ΄Π°:

Если Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ людСй, Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ Π±Π΅Π· ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² ΠΈ ΠΏΠΎΡ‚Π΅Ρ€ΡŒ ΠΊΠΎΠ΄Π°. ВсС эти Π·Π°Π΄Π°Ρ‡ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Git.

К Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ возмоТностям Git относятся:

Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Git

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Git, Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π΅ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€. На ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ сайтС Git ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ установщик ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ инструкции для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ².

Git ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки Π²ΠΎ встроСнном Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ ΠΈΠ»ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ с графичСским ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ интСрфСйсом. ГрафичСский интСрфСйс Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π΅Π½ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², ΠΎΠ΄Π½Π°ΠΊΠΎ часто Π² Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ… Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСкоторая Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, поэтому Π² основном Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git?

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ β€” это всС Ρ„Π°ΠΉΠ»Ρ‹, находящиСся ΠΏΠΎΠ΄ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ вСрсий, вмСстС с историСй ΠΈΡ… измСнСния ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ слуТСбной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ.

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ, Π»ΠΈΠ±ΠΎ Π²Ρ‹Π±Ρ€Π°Π² Π»ΡŽΠ±ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Π»ΠΈΠ±ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π² сСбС ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρƒ работодатСля.

Π“Π΄Π΅ хранится Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ?

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ способы хранСния ΠΈ использования рСпозитория: Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅, Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈ распрСдСлСнныС систСмы контроля вСрсий.

Π’ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… систСмах контроля вСрсий Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ хранится ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ устройствС, Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ‚Π°ΠΊΠΎΠΉ систСмой ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. Π’ случаС Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ систСмы Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ хранится Π½Π° ΠΎΠ΄Π½ΠΎΠΌ сСрвСрС.

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

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

По-английски commit Π·Π½Π°Ρ‡ΠΈΡ‚ Β«Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ». Git-ΠΊΠΎΠΌΠΌΠΈΡ‚ β€” это опСрация, которая Π±Π΅Ρ€Π΅Ρ‚ всС ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ измСнСния ΠΈ отправляСт ΠΈΡ… Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ ΠΊΠΎΠΌΠΌΠΈΡ‚, Ссли Git ΠΈ Ρ‚Π°ΠΊ слСдит Π·Π° всСми измСнСниями? ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹ Ρ€Π°Π·Π±ΠΈΠ²Π°ΡŽΡ‚ процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, состоящий ΠΈΠ· большого количСства ΠΏΡ€Π°Π²ΠΎΠΊ, Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ шаги. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ β€” это Π½Π΅ΠΊΠΎΠ΅ логичСски Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ понятная (Π² Ρ‚ΠΎΠΌ числС ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ) Ρ‚ΠΎΡ‡ΠΊΠ°, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ, Ссли Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

ИзмСнСния Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‚ΡΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ, установлСнным ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ ΠΈ рСкомСндациям, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠΌΡΡ имСнования, описания ΠΈ содСрТания ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ².

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс прСдставляСт собой Ρ†ΠΈΠΊΠ»: ΠΊΠΎΠΌΠΌΠΈΡ‚ β€” ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² β€” ΠΊΠΎΠΌΠΌΠΈΡ‚.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅?

Удобная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° вСтвлСния β€” Π²Π°ΠΆΠ½ΠΎΠ΅ свойство Git. ИспользованиС вСтвлСния позволяСт Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, Π½Π΅ вмСшиваясь Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ линию Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π’Π΅Ρ‚ΠΊΠ° Π² Git β€” это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². Π‘ тСхничСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π²Π΅Ρ‚ΠΊΠ° β€” это ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ»ΠΈ ссылка Π½Π° послСдний ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² этой Π²Π΅Ρ‚ΠΊΠ΅. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, имя основной Π²Π΅Ρ‚ΠΊΠΈ Π² Git β€” master. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° создаСтся Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π²Π΅Ρ‚ΠΊΠΈ master автоматичСски пСрСдвигаСтся Π½Π° Π½Π΅Π³ΠΎ.

Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ с нуля Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°ΠΉΡ‚Π΅ с Git ΠΈ ΡΡ‚Π°Π½ΡŒΡ‚Π΅ вострСбованным спСциалистом. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ скидка 5% ΠΏΠΎ ΠΏΡ€ΠΎΠΌΠΎΠΊΠΎΠ΄Ρƒ BLOG.

ΠŸΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ даСтся Π½ΠΎΠ²Ρ‹ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ testing. Если ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π²Π΅Ρ‚ΠΊΡƒ testing ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚, Ρ‚ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π²Π΅Ρ‚ΠΊΡƒ testing пСрСмСстится Π²ΠΏΠ΅Ρ€Π΅Π΄, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ master останСтся Π½Π° мСстС. ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΠ²ΡˆΠΈΡΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π½Π° Π²Π΅Ρ‚ΠΊΡƒ master, Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ вСрнутся Π² состояниС ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ master.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π³ΠΈΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ история ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρ€Π°Π·ΠΎΡˆΠ»Π°ΡΡŒ Π½Π° Π΄Π²Π΅ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° вСрсии, ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΈ ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΡΠ»ΠΈΡ‚ΡŒ ΠΈΡ… Π² ΠΎΠ΄Π½Ρƒ.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ GitHub?

GitHub β€” это самый популярный сайт для хранСния git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ. Π’Π°ΠΊΠΆΠ΅ GitHub являСтся ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠ΅ΠΉ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠΎΠΉ для размСщСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. Для просмотра ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ общСдоступных Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Π½Π΅ трСбуСтся Π½ΠΈ рСгистрации, Π½ΠΈ ΠΎΠΏΠ»Π°Ρ‚Ρ‹ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°.

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

GitHub часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€ΠΈ Ρ€Π΅ΠΊΡ€ΡƒΡ‚ΠΌΠ΅Π½Ρ‚Π΅ β€” Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ ΠΈ высокоС качСство ΠΊΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ сильно ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π² поискС Ρ€Π°Π±ΠΎΡ‚Ρ‹. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ особСнно Π²Π°ΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ свой ΠΊΠΎΠ΄ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ.

БСйчас сущСствуСт ΠΈ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ½Π»Π°ΠΉΠ½-сСрвисов, ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… с Git. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ GitHub β€” это, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, GitLab ΠΈ BitBucket. Π£ ΠΎΠ±ΠΎΠΈΡ… сайтов мСньшС аудитория, Π½ΠΎ Ρƒ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ свой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» ΠΈ свои прСимущСства, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ BitBucket Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π΅Π½ для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.

Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ с нуля Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°ΠΉΡ‚Π΅ с Git ΠΈ ΡΡ‚Π°Π½ΡŒΡ‚Π΅ вострСбованным спСциалистом. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ скидка 5% ΠΏΠΎ ΠΏΡ€ΠΎΠΌΠΎΠΊΠΎΠ΄Ρƒ BLOG.

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

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

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