Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² GitHub: ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ?

ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚! НСсмотря Π½Π° Ρ‚Π°ΠΊΠΎΠΉ Π΄ΠΎΠ»Π³ΡƒΡŽ ΠΏΠ°ΡƒΠ·Ρƒ послС послСднСй ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΎ VestaCP, Π±ΡƒΠ΄Ρƒ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° Π±ΠΎΠ»Π΅Π΅ интСнсивный Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π‘ этого дня Ρ‚Π΅ΠΌΡ‹ Π½ΠΎΠ²Ρ‹Ρ… статСй Π±ΡƒΠ΄ΡƒΡ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ смСнСны, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ большС статСй, связанных с вёрсткой сайтов. Π― Π½Π΅ Π±Π΅Ρ€Ρƒ Π½Π° сСбя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ вас вёрсткС, Π°, скорСС, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽ Π²Π°ΠΌ миниконспСкт основ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³ΠΊΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ. НадСюсь, Π²Π°ΠΌ понравится ΠΈ Π²Ρ‹ смоТСтС эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Π₯Π²Π°Ρ‚ΠΈΡ‚ прСдисловий, приступим ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅.

ΠŸΡƒΡ‚ΡŒ Ρ†ΠΈΠΊΠ»Π° Π±Ρ‹Π»ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ GitHub. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ инструмСнты Π² своСй Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ. НСльзя Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ Π·Π΅ΠΌΠ»Π΅Π΄Π΅Π»ΠΈΠΈ, Π½Π΅ упомянув ΠΏΠ»ΡƒΠ³)

БистСмы контроля вСрсий

ДрСвняя систСма контроля вСрсий

НавСрноС, всС ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ сохраняли 2 вСрсии Ρ„Π°ΠΉΠ»Π° с нСбольшими отличиями ΠΏΠΎΠ΄ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ? К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π½Π°ΡƒΡ‡ΠΊΠ°-Π²Π΅Ρ€1.txt ΠΈ Π½Π°ΡƒΡ‡ΠΊΠ°-Π²Π΅Ρ€1-ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ»_ΠŸΡƒΡˆΠΊΠΈΠ½.txt. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π²Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ своСму Π½Π°ΡƒΡ‡Π½ΠΎΠΌΡƒ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŽ, ΠΎΠ½ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ», внёс свои измСнСния ΠΈ ΠΎΡ‚Ρ€Π°Π²ΠΈΠ» Π²Π°ΠΌ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ„Π°ΠΉΠ». Π’Π°ΠΊΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ бСсконСчности, плодя мноТСство Ρ„Π°ΠΉΠ»ΠΎΠ², названия ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ставятся всС Π±ΠΎΠ»Π΅Π΅ ΠΈ Π±ΠΎΠ»Π΅Π΅ странными. А ваша ΠΏΠ°ΠΏΠΊΠ° с вСрсиями с «Π½Π°ΡƒΡ‡ΠΊΠΎΠΉ» становится ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄ΠΈΠΊΠΎΠ΅ ΠΈ слоТноС Π² ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ, ΠΈ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ становится ΠΎΡ‡Π΅Π½ΡŒ ΠΈ ΠΎΡ‡Π΅Π½ΡŒ слоТно.

Π’Π°ΠΊΠΎΠΉ способ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌ*Β Π² ΠΌΠΈΡ€Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, особСнно, Ссли Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ трудится ΠΌΠ½ΠΎΠ³ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ. И Π²ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ:

  • Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ошибки Π² Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ вСрсии Ρ„Π°ΠΉΠ»Π°.
  • НСпримСнимо ΠΊ мноТСству Ρ„Π°ΠΉΠ»ΠΎΠ².
  • НСт Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ, Ρ‡Ρ‚ΠΎ Ρƒ вас самая послСдняя вСрсия Ρ„Π°ΠΉΠ»Π°.
  • НСвозмоТно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

БоврСмСнная систСма контроля вСрсий

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

БистСма контроля вСрсий β€” это Ρ‚Π° ΡˆΡ‚ΡƒΠΊΠ°, которая позволяСт ΡƒΠ΄ΠΎΠ±Π½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всС вСрсии ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Ρ‚.Π΅. Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ удаляСтся ΠΈ Π½Π΅ тСряСтся), ΠΈ, ΠΏΡ€ΠΈ надобности, Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΡ‚ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΈ Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ», ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΏΡ€Π°Π²ΠΊΠ°ΠΌ.

ЦСль Ρ‚Π°ΠΊΠΎΠΉ систСмы — ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ вСрсии ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρƒ всСх Π΅Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

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

Π’ΠΈΠ΄Ρ‹ соврСмСнной систСмы контроля вСрсий

ЦСнтрализованная.

  1. БущСствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.
  2. ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ Π½ΠΎΠΌΠ΅Ρ€Π° вСрсий Ρ„Π°ΠΉΠ»ΠΎΠ² (1, 2, 3 ΠΈ Ρ‚.Π΄.).
  3. Π£ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ хранится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ тСкущая вСрсия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.
  4. ВрСбуСтся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ.
  5. ΠŸΡ€ΠΎΡΡ‚ΠΎ, Π½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ.
  6. БлоТности Π² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ.

РаспрСдСлСнная.

На ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ приходится ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π².

  1. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ создаСт Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ копию всСго рСпозитория Π½Π° основС Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ.
  2. НомСра вСрсий слоТныС.
  3. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΡ„Π»Π°ΠΉΠ½.
  4. Π Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ быстро ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ.
  5. ВрСбуСтся синхронизация Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ β€” ΠΎΠ΄ΠΈΠ½.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ слову Git.

GitΒ β€” это инструмСнт для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ распрСдСлённой систСмы контроля вСрсий.

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

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Β GitHub

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с GitHub Π½Π°ΠΌ потрСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ контроля вСрсий (Π²Β GitHub, это GitHub Desktop) ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-сайт, Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ»ΠΈΠ΅Π½Ρ‚.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ GitHub

  1. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ вСсь Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° свой ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ (pull).
  2. Вносим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ, сохраняСм, вносим ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈ Ρ‚.Π΄. Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ рСпозитория.
  3. ΠŸΡ€ΠΎΡΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° внСсти ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.
    ВнСсСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ называСтся фиксациСй ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Β«ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌΒ» (commit).
  4. ПослС ΠΊΠΎΠΌΠΌΠΈΡ‚Π° вСрсия вашСго локального рСпозитория измСнилась.
  5. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ измСнСния фиксированы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΠ»ΠΈΡΡŒ Π½Π° сайтС GitHub, трСбуСтся Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° функция «ΡΠΈΠ½Ρ…ронизация Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²» (push).
  6. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ваш Π³Π»Π°Π²Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, располоТСнный Π² GitHub, Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅.

Вакая стандартная схСма ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ°, ΠΊΠΎΠ³Π΄Π° Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ. Если Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ нСсколько Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, Ρ‚ΡƒΡ‚ Π½Π΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ², слияний, Ρ€ΡƒΡ‡Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ².

БлияниС, ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°

Для понимая Π½ΡƒΠΆΠ΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π’Π»Π°Π΄ ΠΈ АртСм сдСлали копию рСпозитория (pull) с Ρ„Π°Π»ΠΎΠΌ вСрсии 1 с GitHub, внСсли Ρ€Π°Π·Π½Ρ‹Π΅ измСнСния Π² этот Ρ„Π°ΠΉΠ», ΠΎΠ±Π° зафиксировали измСнСния (commit) β†’ вСрсии Ρ„Π°Π»Π° Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² измСнились, Ρƒ Π’Π»Π°Π΄Π° вСрсия 2, Ρƒ АртСм 2А. И Π·Π°Ρ‚Π΅ΠΌ Π’Π»Π°Π΄ Π·Π°ΠΏΡƒΡˆΠΈΠ» (синхронизировал Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ- push). Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π° GitHub добавилась вСрсия Ρ„Π°ΠΉΠ»Π° 2. АртСм Ρ‚ΠΎΠΆΠ΅ Ρ€Π΅ΡˆΠΈΠ» Π·Π°ΠΏΡƒΡˆΠΈΡ‚ΡŒ свои измСнСния, Ρ‚. ΠΊ. Π½Π° GitHub Π΅ΡΡ‚ΡŒ вСрсия ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅Ρ‚ Ρƒ АртСма (Ρƒ Π½Π΅Π³ΠΎ Π½Π΅Ρ‚ вСрсии 2), систСма откаТСтся ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ для сохранСния вСрсии 2.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ внСсти свои измСнСния, АртСму Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡΡ‚ΡŒ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ (pull) с GitHub с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ вСрсиСй этого Ρ„Π°ΠΉΠ»Π°. ΠŸΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚.

На самом Π΄Π΅Π»Π΅ сильно ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π±ΠΎΡΡ‚ΡŒΡΡ Π½Π΅ Π½Π°Π΄ΠΎ, ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² большой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΈΡ… Π½Π΅ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ, это становится ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠΉ Ρ€ΡƒΡ‚ΠΈΠ½ΠΎΠΉ.

Бпособы Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°:

  1. АвтоматичСскоС слияниС. Бравнивая построчно ΠΊΠΎΠ΄ Π’Π»Π°Π΄Π° ΠΈ АртСма, GitHub ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ куски ΠΊΠΎΠ΄Π° Π² Ρ„Π°ΠΉΠ»Π΅, ΠΏΡ€ΠΈ этой получится новая вСрсия Ρ„Π°ΠΉΠ»Π°. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π²Β Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ вСрсии 1, 2, 2А, ΠΈ 3, Π° АртСм Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡˆΠΈΡ‚ΡŒ всС ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ вСрсии Ρ„Π°ΠΉΠ»Π°.
  2. Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π° Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Git ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΡ‚, ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΠ΅Ρ‚, ΠΈ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ внСсти Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ. БоздаСтся вСрсия 3, ΠΈ АртСм ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡˆΠΈΡ‚ΡŒ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ вСрсии Ρ„Π°ΠΉΠ»Π°.

Master / Π½Π΅ master, Fork, PullΒ request

Π’Π΅Ρ‚ΠΊΠΈ β€” это своСобразныС ΠΏΠ°ΠΏΠΊΠΈ со всСми Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Π΅Ρ‚ΠΊΠ° Master — это самая главная ΠΏΠ°ΠΏΠΊΠ° вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΎΠ½Π° всСгда сущСствуСт.Β Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π²Π΅Ρ‚ΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ всякиС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π½ΡƒΠΆΠ΄Ρ‹.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠΎΠ΄Π΅Π»ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ:

Π’ Master Π»Π΅ΠΆΠΈΡ‚ послСдняя ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ вСрсия, Π³Π΄Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния; development — Π²Π΅Ρ‚ΠΊΠ° для нСпосрСдствСнной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ; dev-adaptive — Π²Π΅Ρ‚ΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, связанная с ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Fork? К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π½Π° GitHub Π²Π°ΠΌ понравился ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π½ΠΎ Π²Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ»ΠΈ Π² Π½Π΅ΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π΅Π΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, Π½ΠΎ доступа ΠΊ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Ρ‡ΡƒΠΆΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρƒ вас Π½Π΅Ρ‚. Для этого Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ fokr. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΅ΡΡ‚ΡŒ доступ для рСдактирования Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Ρ‹ ΡΠΏΡ€Π°Π²ΠΈΠ»ΠΈΡΡŒ с Π±Π°Π³ΠΎΠΌ, Π½ΠΎ ваши Ρ‚Ρ€ΡƒΠ΄Ρƒ ΠΏΡ€ΠΎΠΏΠ°Π΄ΡƒΡ‚ Π΄Π°Ρ€ΠΎΠΌ Ρ‚. ΠΊ. измСнСния Π½Π΅ отобразится Π² master Π²Π΅Ρ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ ΠΈ создан PullΒ request.

PullΒ request β€” это ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ внСсти Π² Π³Π»Π°Π²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ваши измСнСния.

На этом нСбольшоС Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ. НС ΠΌΡƒΡ‡Π°ΠΉΡ‚Π΅ΡΡŒ с Π΄ΠΎΠΏΠΎΡ‚ΠΎΠΏΠ½ΠΎΠΉ систСмой вСрсий, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ Π½Π° GitHub. Бпасибо Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅.

pupi-boy.ru

Как Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ людСй ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Git / Habr

По Ρ€Π°Π±ΠΎΡ‚Π΅ приходится ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, поэтому я Ρ…ΠΎΡ€ΠΎΡˆΠΎ знаю, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ всС ΠΌΠΎΠΈ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ. Помню, Ρ‡Ρ‚ΠΎ компания Π½Π°Ρ‡Π°Π»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Git Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Π·Π° ΠΏΠ°Ρ€Ρƒ нСдСль Π΄ΠΎ ΠΌΠΎΠ΅Π³ΠΎ ΠΏΡ€ΠΈΡ…ΠΎΠ΄Π°. На ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π°Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΊΡ€ΡƒΠ³ΠΎΠΌ висСли Π½Π°ΠΊΠ»Π΅ΠΉΠΊΠΈ с Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ: сначала add, ΠΏΠΎΡ‚ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚, Π·Π°Ρ‚Π΅ΠΌ ΠΏΡƒΡˆ.
Они Π½Π΅ Π·Π½Π°Π»ΠΈ, Π·Π°Ρ‡Π΅ΠΌ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Π°ΠΌ просто сказали строго ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ инструкции, ΠΈΠ½Π°Ρ‡Π΅ Π±Π΅Π΄Π°. Но ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΈ Ρ‚Π°ΠΊ часто, Ρ‡Ρ‚ΠΎ я Ρ€Π΅ΡˆΠΈΠ»Π° провСсти сСминар ΠΏΠΎ Git.


МнС нравится ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚Ρƒ Π² Π³ΠΎΠ»ΠΎΠ²Π΅. Π― Π½Π΅ Π³ΠΎΠ²ΠΎΡ€ΡŽ Β«ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ°Ρ€Ρ‚Ρ‹Β», ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстный Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. Π Π΅Ρ‡ΡŒ ΠΎ Π½Π΅ΠΊΠΈΡ… ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°Ρ…, структурах ΠΈΠ»ΠΈ любом графичСском прСдставлСнии Π² ΡƒΠΌΠ΅. НапримСр, Π² дСтствС я ΡƒΡ‡ΠΈΠ»Π° Π°Ρ€ΠΈΡ„ΠΌΠ΅Ρ‚ΠΈΠΊΡƒ, прСдставляя ΠΈΠ³Ρ€Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΡƒΠ±ΠΈΠΊΠΈ.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»Π° нСсколько рисунков. НС ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡ… ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ тСкст. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΅ΡΡ‚ΡŒ пояснСниС.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°ΠΌ. Π˜Π½Π°Ρ‡Π΅ ΠΎΠ½ Π½Π΅ ΠΏΠΎΠΉΠΌΡ‘Ρ‚ сообщСния ΠΎΡ‚ Git. Рисунки β€” Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ способ.


На рисункС Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ области распрСдСлСны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • Π‘Ρ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:
    • Π Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³
    • ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Π°Ρ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ (staging) ΠΈΠ»ΠΈ индСкс
    • Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
  • Π‘Π΅Ρ€Π²Π΅Ρ€:
    • Π£Π΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ прСимущСства распрСдСлённой систСмы управлСния вСрсиями.

ΠŸΡ€ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² Π΄Π²Π΅ области:

  • Π Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³
  • Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ


Π’ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° Ρ„Π°ΠΉΠ»ΠΎΠ²:

  • ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅: Ρ„Π°ΠΉΠ»Ρ‹, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π½Π°Π΅Ρ‚ Git.
  • НСотслСТиваСмыС: ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Ρ‰Ρ‘ Π½Π΅ Π±Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹, поэтому Git Π½Π΅ Π·Π½Π°Π΅Ρ‚ ΠΎ Π½ΠΈΡ….


ПослС ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ (staging area).

Когда Ρ‚Π°ΠΌ накопился ряд ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ с ΠΎΠ±Ρ‰Π΅ΠΉ Ρ†Π΅Π»ΡŒΡŽ, самоС врСмя ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π² локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ с сообщСниСм ΠΎΠ± этой Ρ†Π΅Π»ΠΈ.

Если Π² локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊ совмСстному использованию всСм ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠΈΡ€ΠΎΠΌ, ΠΎΠ½ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π²

ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Π’ этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… состояниях Ρ„Π°ΠΉΠ»Π° Π² срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½Π½ΠΎΠΌ, ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠΌ (staged) ΠΈ зафиксированном (commited).

Π”Π°Π»Π΅Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ:

  • ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ измСнСния Ρ„Π°ΠΉΠ»Π° Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅: git diff
  • ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ измСнСния Ρ„Π°ΠΉΠ»Π° Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠΉ области: git diff --staged
  • ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ послС добавлСния Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ
  • ΠΈ Ρ‚.Β Π΄.


ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ (fetching)


ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ git fetch Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

ВытягиваниС (pulling)


ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ git pull Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² Π΄Π²Π΅ области:

  • Π’ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ: fetch
  • Π’ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³: merge

Если Π²Π°ΠΆΠ½Π° история ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², рассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования git pull --rebase. Π’ΠΎΠ³Π΄Π° вмСсто ΠΊΠΎΠΌΠ°Π½Π΄ fetch + merge Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ fetch + rebase. Π’Π°ΡˆΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ воспроизвСдСны, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π² истории ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈΠ·Π²Π΅ΡΡ‚Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ Π±Ρ€ΠΈΠ»Π»ΠΈΠ°Π½Ρ‚Π°.


ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Ρƒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½Ρ‹Π΅ измСнСния: грязный Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Когда люди усвоят эти понятия, Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³Ρ‡Π΅ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ дальнСйшСС: Π²Π΅Ρ‚Π²ΠΈ, ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚ ΡƒΠΆΠ΅ Π·Π°Π»ΠΎΠΆΠ΅Π½.


Π― Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ систСмами управлСния вСрсиями (Visual SourceSafe, TFS ΠΈ Subversion): ΠΏΠΎ ΠΌΠΎΠ΅ΠΌΡƒ скромному ΠΎΠΏΡ‹Ρ‚Ρƒ, нСдостаток Π·Π½Π°Π½ΠΈΠΉ Π²Ρ€Π΅Π΄ΠΈΡ‚ ΠΈ со старым инструмСнтом, ΠΈ с Π½ΠΎΠ²Ρ‹ΠΌ. Π‘ΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΡŒΡ‚Π΅ΡΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π²Ρ‹Π±ΠΎΡ€Π΅ инструмСнта, Π½ΠΎ ΠΈ Π½Π° Π΅Π³ΠΎ освоСнии.


Мой Π΄Ρ€ΡƒΠ³ ΠœΠ°Ρ€ΠΊ Виллаграса Π½Π°ΠΏΠΎΠΌΠ½ΠΈΠ», Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΊΠΈ Git ΠΈ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ с ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ.

РСсурсы ΠΈΠ· ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π½Π° Hacker News:


ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π° Reddit, я ΠΏΠΎΠ΄ΡƒΠΌΠ°Π»Π°, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ Π±Ρ‹Π»ΠΎ Π±Ρ‹ «ИдСя, ΠΊΠ°ΠΊ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ людСй ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ GitΒ», ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ идСя, которая появилась Π² ΠΌΠΎΠ΅ΠΉ Π³ΠΎΠ»ΠΎΠ²Π΅, ΠΊΠΎΠ³Π΄Π° я сама нСсколько Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ ΠΈΠ·ΡƒΡ‡Π°Π»Π° Git ΠΏΠΎ ΠΊΠ½ΠΈΠ³Π΅ Pro Git. Π‘Ρ‚Π°Ρ‚ΡŒΡ Π½Π΅ являСтся ΠΏΠΎΠ»Π½Ρ‹ΠΌ руководством, лишь отправная Ρ‚ΠΎΡ‡ΠΊΠ°. Π£Π²Π΅Ρ€Π΅Π½Π°, Ρ‡Ρ‚ΠΎ всС эти рСсурсы Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹. Бпасибо!

И спасибо Π‘Ρ‚ΡŽΠ°Ρ€Ρ‚Ρƒ ΠœΠ°ΠΊΡΠ²Π΅Π»Π»Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ подСлился ссылкой Π½Π° Hacker News, ΠΈ u/cryptoz, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запостил Π΅Ρ‘ Π½Π° Reddit!

habr.com

Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с GitHub для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²

Если Π’Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ шаги Π½Π° ΠΏΡƒΡ‚ΠΈ использования VCS (Version Control System), Ρ‚ΠΎ Π’Ρ‹ ΡƒΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ насколько это полСзная Π²Π΅Ρ‰ΡŒ. ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π² использования ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… систСм масса, Π½ΠΎ ΡΡ‚Π°Ρ‚ΡŒΡ Π½Π΅ ΠΎΠ± этом. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я расскаТу ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ (ΠΏΠΎΠ΄ windows 7) с ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· самых популярных систСм контроля вСрсий β€” Github.

ΠžΡ‡Π΅Π½ΡŒ часто Π² свободной Ρ€Π΅Ρ‡ΠΈ ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½Π΅ Π³ΠΈΡ‚Ρ…Π°Π±, Π° просто Π³ΠΈΡ‚ имСя Π²Π²ΠΈΠ΄Ρƒ рСсурс https://github.com, ΠΎΠ΄Π½Π°ΠΊΠΎ, это Π½Π΅ совсСм ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ. Π‘Π°ΠΌ ΠΏΠΎ сСбС рСсурс Π³ΠΈΡ‚Ρ…Π°Π±, это Π²Π΅Π± ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° систСмы ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŽ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ нашими ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ. Π­Ρ‚ΠΎ своСго Ρ€ΠΎΠ΄Π° ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ php, Π½ΠΎ ΠΈ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ языкам программирования. Π§Ρ‚ΠΎ ΠΆΠ΅ касаСтся нСпосрСдствСнно Π³ΠΈΡ‚Π°, Ρ‚ΠΎ это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π° наш ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€/Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅, Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π΄Π²Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

  1. msysgit. Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ послСднюю Π²Π΅Ρ€ΡΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΡΡŽΠ΄Π° -> Git
  2. TortoiseGitΒ (32bit ΠΈ 64bit)

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π’Ρ‹ скачали эти Π΄Π²Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π°Ρ‡Π½Π΅ΠΌ ΠΈΡ… установку.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!Π‘Π½Π°Ρ‡Π°Π»Π° Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ msysgit, Π° послС β€” TortoiseGit

ΠŸΡ€ΠΎΡ†Π΅ΡΡ установки msysgit ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятный, поэтому ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΠΌ ΠΌΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ. ЕдинствСнноС β€” всС настройки, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ Π² процСссС установки ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π”Π°Π»Π΅Π΅ ставим TortoiseGit. Π’ΡƒΡ‚ Ρ‚ΠΎΠΆΠ΅ всС просто. Π“Π»Π°Π²Π½ΠΎΠ΅, Π²ΠΎ врСмя установки, ΠΊΠΎΠ³Π΄Π° Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠΊΠ½ΠΎ:

Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Ρ‚ΠΎΡ‚ ΠΏΡƒΠ½ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π’Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π° скринС Π²Ρ‹ΡˆΠ΅.

ПослС установки этих ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², считайтС, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ этап ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½. Π’Ρ‚ΠΎΡ€ΠΎΠΉ этап β€” ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ доступа ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Π½Π° Github.

Для Π½Π°Ρ‡Π°Π»Π° Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡŽ Π½Π° сайтС https://github.com. РСгистрация Π½Π° этом сайтС простая ΠΈ ΠΌΠ°Π»ΠΎ Ρ‡Π΅ΠΌ отличаСтся ΠΎΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… сайтах.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π’ΠΎ врСмя рСгистрации ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ email, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π’Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ

ПослС этого, Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΈΠΌΠ΅ΠΈΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ ΠΏΡ€ΠΈ рСгистрации. Если Π’Ρ‹ Π²Π΄Ρ€ΡƒΠ³ Π·Π°Π±Ρ‹Π»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π»ΠΈ ΠΏΡ€ΠΈ рСгистрации, Ρ‚ΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Edit Profile -> Emails (https://github.com/settings/emails) ΠΈ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π’Ρ‹ Π΅Π³ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅:

Π’ΡƒΡ‚ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ SSH key. Π­Ρ‚ΠΎ такая цифровая подпись для Π’Π°ΡˆΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ этот ΠΊΠ»ΡŽΡ‡, Π½Π°ΠΌ понадобится Ρ‚ΠΎΡ‚ самый git. ПослС Π΅Π³ΠΎ установки Ρƒ Вас Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ столС Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ярлык Git Bush. Π”Π²ΠΎΠΉΠ½ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° Π½Π΅Π³ΠΎ запустит консоль.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Если Ρƒ Вас Π½Π΅Ρ‚ Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ столС этого ярлыка, Ρ‚ΠΎ эту ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ: Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ столС, Π½Π° свободном мСстС Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ контСкстноС мСню ΠΌΡ‹ΡˆΡŒΡŽ ΠΈ Π² спискС ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² Π’Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Ρ‚ΠΎΡ‚ самый Git Bush

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

ssh-keygen -t rsa -C «E-Mail ΠΈΠ· Π’Π°ΡˆΠ΅Π³ΠΎ профиля»

ssh-keygen -t rsa -C «E-Mail ΠΈΠ· Π’Π°ΡˆΠ΅Π³ΠΎ профиля»

ПослС этого, здСсь ΠΆΠ΅, появится надпись Β«Enter file in which to save the keyΒ». Пока ΠΌΡ‹ оставим всС ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ ΠΈ просто Π½Π°ΠΆΠΌΠ΅ΠΌ Enter. Π’Π΅ΠΏΠ΅Ρ€ΡŒ нас просят ввСсти ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, ΠΏΠΎΠΊΠ° ΠΌΡ‹ пропустим ΠΈ этот шаг Π½Π°ΠΆΠ°Π² Enter, Π½ΠΎ Π² послСдствии этот ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ввСсти ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. ПослС этого Ρƒ нас ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π΄Π²Π° Ρ„Π°ΠΉΠ»Π° β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… Π±ΡƒΠ΄Π΅Ρ‚ нашим SSH ΠΊΠ»ΡŽΡ‡ΠΎΠΌ.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π£ Вас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ установлСн ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ssh-keygen ΠΈ Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° попросту Π½Π΅ сработаСт, Π° ΠΊΠ°ΠΊ слСдствиС β€” ΠΊΠ»ΡŽΡ‡ Π³Π΅Π½Π΅Ρ€ΠΈΡ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Π»ΠΈΠ±ΠΎ ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ€ΠΎΠ΄Π΅ putty. Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π½Π° Ρ…Π°Π±Ρ€Π΅ ->Β http://habrahabr.ru/. Π›ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ соСдинСниС ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ HTTPS.

Если Π’Ρ‹ всС Π΄Π΅Π»Π°Π»ΠΈ ΠΊΠ°ΠΊ описано Π² этой инструкции ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π² процСссС Π½Π΅ мСняли, Ρ‚ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ здСсь:Β C:/users/{UserName}/.ssh/

Π’ этой ΠΏΠ°ΠΏΠΊΠ΅ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π±ΡƒΠ΄Π΅Ρ‚ Ρ„Π°ΠΉΠ»Β ida_rsa.pub, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°Π΄ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π° ΠΈ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ содСрТимоС Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° (попросту говоря, Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ Ctrl+A, Π·Π°Ρ‚Π΅ΠΌ Ctrl+C).

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом настройки, Π±ΡƒΠ΄Π΅Ρ‚ занСсСниС этого ΠΊΠ»ΡŽΡ‡Π° Π² Π’Π°Ρˆ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅. Для этого ΠΈΠ΄ΠΈΡ‚Π΅ Π² настройки Π’Π°ΡˆΠ΅Π³ΠΎ профиля: Settings -> SSH Keys ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Add SSH key, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° скринС Π½ΠΈΠΆΠ΅.

ΠŸΠ΅Ρ€Π΅Π΄ Π’Π°ΠΌΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π»Π°ΡΡŒ Ρ„ΠΎΡ€ΠΌΠ° с двумя полями:

  1. Title
  2. Key

Π’Π°ΠΉΡ‚Π» оставляйтС пустым, Π° Π²ΠΎΡ‚ Π² ΠΏΠΎΠ»Π΅ Key Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ скопированный Ρ€Π°Π½Π΅Π΅ тСкст ΠΈΠ· Ρ„Π°ΠΉΠ»Π°Β ida_rsa.pub.

ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»ΡΡŽ, Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ этап ΠΎΠΊΠΎΠ½Ρ‡Π΅Π½. Π•Ρ‰Π΅ совсСм Ρ‡ΡƒΡ‚ΡŒ-Ρ‡ΡƒΡ‚ΡŒ ΠΈ Π’Ρ‹ смоТСтС Π½Π°ΡΠ»Π°ΠΆΠ΄Π°Ρ‚ΡŒΡΡ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ Π² своСм собствСнном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ создайтС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ Π½Π° локальном хостС Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π’Π°Ρˆ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ Π½Π° Π½Π΅ΠΉ контСкстноС мСню. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΡƒΠ½ΠΊΡ‚ TortoiseGit -> Settings ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° скринС:

Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ слСва, Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½ΠΎΠ΅ мСню. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Git -> Config ΠΈ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ своС имя ΠΈ адрСс ΠΈΠΌΠ΅ΠΉΠ»Π° Π² точности Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Π’Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈ ΠΏΡ€ΠΈ рСгистрации Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ) Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° наш ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€. Для этого ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅ Π² свой созданный Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ справа Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π΅Π³ΠΎ адрСс:

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ этот адрСс Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ контСкстноС мСню Π½Π° ΠΏΠ°ΠΏΠΊΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π’Ρ‹ создали ΠΏΠΎΠ΄ свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Β«Git Clone…»:

Π£ нас ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΎΡΡŒ ΠΎΠΊΠ½ΠΎ ΠΊΡƒΠ΄Π° Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ скопированный адрСс нашСго рСпозитория:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ»Π΅ Directory β€” ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ дописана Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΠ°ΠΏΠΊΠ°. ΠŸΡ€ΠΎΡΠ»Π΅Π΄ΠΈΡ‚Π΅ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π°ΠΌ ΠΏΡƒΡ‚ΡŒ Π±Ρ‹Π» ΠΊ вашСй ΠΏΠ°ΠΏΠΊΠ΅ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, Π° Π½Π΅ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΆΠΈΠΌΠ°ΠΉΡ‚Π΅ ОК. НачинаСтся ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅:

На этом этапС ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΎΠΊΠΎΠ½Ρ‡Π΅Π½Π½ΠΎΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π’Π°ΠΌ остаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ лишь ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ ΠΈ ΠΏΡƒΡˆΠΈΡ‚ΡŒ ваши ΠΏΡ€Π°Π²ΠΊΠΈ. Об этом Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅ΠΉ я расскаТу Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с Git. Учимся Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹,Β ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ ΠΈ ΠΏΡƒΡˆΠΈΡ‚ΡŒ > Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с GitHub для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ². Π§Π°ΡΡ‚ΡŒ 2

www.la2q.com

Git ΠΈ Github. ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ Ρ€Π΅Ρ†Π΅ΠΏΡ‚Ρ‹ / Habr

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

БистСма Git появилась, ΠΊΠ°ΠΊ срСдство управлСния исходными тСкстами Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Linux ΠΈ Π·Π°Π²ΠΎΠ΅Π²Π°Π»Π° мноТСство ΠΏΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊΠΎΠ² Π² срСдС Open Source.

БСрвис Github прСдоставляСт хостинг (Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅) исходных тСкстов ΠΊΠ°ΠΊ Π½Π° ΠΏΠ»Π°Ρ‚Π½ΠΎΠΉ, Ρ‚Π°ΠΊ ΠΈ Π½Π° бСсплатной основС. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠΈΡ… систСм, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π»ΡŽΠ±ΡΡ‚ Open Source ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ. ОсновноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Π½ΠΎΠΉ вСрсии β€” это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания частных Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² (Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰) исходных тСкстов ΠΈ Ссли Π²Π°ΠΌ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅Ρ‡Π΅Π³ΠΎ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ спокойно ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ бСсплатной вСрсиСй.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π°Ρ‡Π°Π»ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ написали ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ, Ρƒ вас появится ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² случаС, Ссли Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Π‘Π°ΠΌΠΎΠ΅ простоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ β€” это ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всС Π½Π° Ρ„Π»Π΅ΡˆΠΊΠ΅. Π­Ρ‚ΠΎΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎ Ссли Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ (Π° сСйчас Ρƒ ΠΊΠΎΠ³ΠΎ Π΅Π³ΠΎ Π½Π΅Ρ‚), Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ систСмами Git/Github.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π±Π°Π·ΠΎΠ²Ρ‹Π΅ сцСнарии использования систСм Git/Github ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Π² срСдС Linux с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. ВсС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»ΠΈΡΡŒ Π½Π° систСмС с Linux Ubuntu 14.04 ΠΈ Git 1.9.1. Если Π²Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠΌ дистрибутивом, Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ отличия.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ локального рСпозитория

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ находится Π² ΠΏΠ°ΠΏΠΊΠ΅ /home/user/project. ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ исходники, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Π½Π΅Ρ‚ Π»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΏΠ°ΠΏΠΊΠ΅ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ ΠΏΠΎ возмоТности ΠΈΡ… ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ.

Для просмотра ΠΏΠ°ΠΏΠΊΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ tree, которая ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ содСрТимоС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ, Π½ΠΎ ΠΈ Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡƒΡŽ структуру Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ.

Часто Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ содСрТат спСцифичСскиС суффиксы, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΈΡ… Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΈ Π² послСдствии ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ. Для поиска Ρ‚Π°ΠΊΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ find. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° посмотрим, ΠΊΠ°ΠΊ Π½Π°ΠΉΡ‚ΠΈ всС Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ компилятором Python ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ .pyc

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠΏΠ°ΠΏΠΊΡƒ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ /home/user/project:

cd /home/user/project

И ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ список Ρ„Π°ΠΉΠ»ΠΎΠ² с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .pyc:
find . -name *.pyc

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ список всСх Ρ„Π°ΠΉΠ»ΠΎΠ² с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .pyc Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ Π² Π΅Π΅ поддирСкториях. Для удалСния Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², достаточно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ -delete ΠΊ этой ΠΊΠΎΠΌΠ°Π½Π΄Π΅:
find . -name *.pyc -delete

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

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π² ΠΏΠ°ΠΏΠΊΠ΅ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ:

git init

ПослС выполнСния этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ появится новая ΠΏΠ°ΠΏΠΊΠ° с ΠΈΠΌΠ΅Π½Π΅ΠΌ .git. Π’ Π½Π΅ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ нСсколько Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠ΅Π². На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ систСма управлСния вСрсиями Π΅Ρ‰Π΅ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚ Π½Π°ΡˆΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ².
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Для добавлСния Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°:
git add readme

ПослС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ„Π°ΠΉΠ» readme Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² систСму управлСния вСрсий (ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ Ссли ΠΎΠ½ ΡƒΠΆΠ΅ Π±Ρ‹Π» Ρ‚ΠΎ этого Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅). ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° гСнСрируСтся Ρ…Π΅Ρˆ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ выглядит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:
9f2422325cef705b7682418d05a538d891bad5c8

Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ хранятся Π² ΠΏΠ°ΠΏΠΊΠ΅ .git/objects/xx/yyyyyyyy, ΠΏΡ€ΠΈ этом ΠΏΠ΅Ρ€Π²Ρ‹Π΅ 2 Ρ†ΠΈΡ„Ρ€Ρ‹ Ρ…Π΅ΡˆΠ° ΠΈΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для указания Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ…Π΅Ρˆ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ являСтся ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ„Π°ΠΉΠ»Π°. Наш Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π±ΡƒΠ΄Π΅Ρ‚ находится здСсь:
.git/objects/9f/2422325cef705b7682418d05a538d891bad5c8

Π§Ρ‚ΠΎ Π»Π΅Π³ΠΊΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:
ls .git/objects

Π‘Π°ΠΌ Ρ„Π°ΠΉΠ» являСтся Π°Ρ€Ρ…ΠΈΠ²ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅Π³ΠΊΠΎ Ρ€Π°ΡΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΈ вывСсти Π½Π° экран, ΡƒΠΊΠ°Π·Π°Π² ΠΏΠΎΠ»Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅ΡˆΠ°.
git cat-file -p 9f2422325cef705b7682418d05a538d891bad5c8

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅:
git add .

Если Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ ΠΈΠ· всСх ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠ΅Π², Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅:
git add --all

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² систСму Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡ… занСсти Π² Ρ„Π°ΠΉΠ» .gitignore, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ ΡƒΡ€ΠΎΠ²Π½Π΅, Ρ‡Ρ‚ΠΎ ΠΈ .git дирСктория).

НапримСр, Ссли Π² Π² Ρ„Π°ΠΉΠ» .gitignore Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строчку *.pyc, Ρ‚ΠΎ всС Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .pyc Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒΡΡ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

ПослС добавлСния Ρ„Π°ΠΉΠ»ΠΎΠ², всС измСнСния находятся Π² Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ staging (ΠΈΠ»ΠΈ cached) area. Π­Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для накоплСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ собствСнно вСрсии ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² (commit).

Для просмотра Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ состояния ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

git status

ПослС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² stage area находится наш Ρ„Π°ΠΉΠ»:
new file:   readme

Если Π²Ρ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² Ρ„Π°ΠΉΠ» readme, Ρ‚ΠΎ послС Π²Ρ‹Π·ΠΎΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git status Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄Π²Π΅ вСрсии Ρ„Π°ΠΉΠ»Π°.
new file:   readme

modified:   readme

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ измСнСния достаточно ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. Команда git add Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ добавляСт Π½ΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Π½ΠΎ ΠΈ всС измСнСния Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ€Π°Π½Π΅Π΅.
git add readme

МоТно ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ добавлСния Ρ„Π°ΠΉΠ»Π° readme Π² staging area с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:
git rm --cached readme

ПослС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ„Π°ΠΉΠ» readme отмСтится, ΠΊΠ°ΠΊ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ систСмой.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ вСрсии ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π½ΡƒΠΆΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² staging area ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:
git commit -m "comment"

КаТдая новая вСрсия сопровоТдаСтся ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ.

ПослС ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, ΠΌΡ‹ смоТСм Π½Π°ΠΉΡ‚ΠΈ Π΄Π²Π° Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ .git рСпозитория.

.git/objects/9f/2422325cef705b7682418d05a538d891bad5c8
.git/objects/65/7ab4c07bd3914c7d66e4cb48fe57f5c3aa7026
.git/objects/da/c6721c3b75fcb3c9d87b18ba4cef2e15e0a3d3

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ:
git cat-file -t 657ab4c07bd3914c7d66e4cb48fe57f5c3aa7026

ΠšΠ»ΡŽΡ‡ -t ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ:
commit

Для Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°:
git cat-file -t dac6721c3b75fcb3c9d87b18ba4cef2e15e0a3d3

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:
tree

Для самого ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°:
git cat-file -t 9f2422325cef705b7682418d05a538d891bad5c8

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ:
blob

Если ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ дальшС ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ содСрТимоС этих Ρ„Π°ΠΉΠ»ΠΎΠ², Ρ‚ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠΌ Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡƒΡŽ структуру. ΠžΡ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ссылкам ΠΏΡ€ΠΎΠΉΡ‚ΠΈ ΠΏΠΎ всСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ. Для практичСского примСнСния это Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π½ΡƒΠΆΠ½ΠΎ, Π½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³Ρ‡Π΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ происходит ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с систСмой Git.

Π‘Π°ΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ нСльзя. Π•Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ измСнСния Π² послСднюю Π²Π΅Ρ€ΡΠΈΡŽ, Ρ‚ΠΎ послС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ commit, добавляСтС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ измСнСния ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚Π΅:

git commit -m "comment" --amend

Или Ρ‚Π°ΠΊ:
git commit --amend --no-edit

ΠšΠ»ΡŽΡ‡ —no-edit Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ.

МоТно ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ внСсли послСдним ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ:

git show

Или Ρ‚Π°ΠΊ:
git show --name-only

ΠšΠ»ΡŽΡ‡ —name-only Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠΌΠ΅Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ². Π‘Π΅Π· Π½Π΅Π³ΠΎ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Π½ΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π°Π½ список всСх ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Если Π²Ρ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΡƒΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² систСму ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git add, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

git commit -a -m "comment"

Для просмотра списка всСх ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git log

Или Ρ‚Π°ΠΊ:
git log --oneline

ΠšΠ»ΡŽΡ‡ —oneline Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π²Ρ‹Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ Π½Π° экран. Π‘ этим ΠΊΠ»ΡŽΡ‡Π΅ΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ показываСтся Π² ΠΎΠ΄Π½Ρƒ строчку. НапримСр:
2b82e80 update
657ab4c first

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ измСнСния ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρƒ, достаточно Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git show Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ…Π΅Ρˆ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.
git show 657ab4c 

Для ΠΎΡ‚ΠΌΠ΅Π½Ρ‹ послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π° (ΠΊΡ€ΠΎΠΌΠ΅ самого ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ) ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git reset HEAD~1

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΏΠ°ΠΏΠΊΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ относятся ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ ΠΈ Π½Π΅ сохранСны Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git clean -df

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

Π”ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ с Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сохранялся Π² ΠΏΠ°ΠΏΠΊΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ сохранСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅, создадим Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° Github. Для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° сайтС github.com ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ myuser (Π² вашСм случаС это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ имя).

ПослС рСгистрации Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΡƒ «+» ΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ рСпозитория. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΈΠΏ Public (Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ всСгда Public для бСсплатной вСрсии) ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Create.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ создали Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° сайтС Github. На экранС ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ, ΠΊΠ°ΠΊ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ наш Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ со вновь созданным. Π§Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π°ΠΌ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΠ°.

ДобавляСм ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ (ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ SSH) ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ origin (вмСсто origin ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ имя).

git remote add origin [email protected]:myuser/project.git

МоТСм ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ добавлСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:
git remote -v

Если всС Π±Ρ‹Π»ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ сдСлано, Ρ‚ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ:
origin [email protected]:myuser/project.git (fetch)
origin [email protected]:myuser/project.git (push)

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡŽ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитария Π²Π²Π΅Π΄ΠΈΡ‚Π΅:
git remote rm origin

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ, Ссли Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ SSH доступ Π½Π° HTTPS. ПослС этого ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΎΠΏΡΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ github ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ HTTPS.
git remote add github https://github.com/myuser/project.git

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Π²Ρ‹ занСсСтС всС измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ сдСланы Π² локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π½Π° Github.
git push -u github master

ΠšΠ»ΡŽΡ‡ -u ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ связь ΠΌΠ΅ΠΆΠ΄Ρƒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ github ΠΈ вашСй Π²Π΅Ρ‚ΠΊΠΎΠΉ master. ВсС дальнСйшиС измСнСния Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.
git push

ΠŸΠ΅Ρ€Π΅Π½ΠΎΡ рСпозитория Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π±Ρ‹Π» создан Π½Π° Github, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€. Для этого примСняСтся ΠΊΠΎΠΌΠ°Π½Π΄Π°:
git clone https://github.com/myuser/project.git

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ выполнСния этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ созданиС ΠΏΠ°ΠΏΠΊΠΈ project Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π­Ρ‚Π° ΠΏΠ°ΠΏΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ .git).

Π’Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΏΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

git clone https://github.com/myuser/project.git <myfolder>

Π Π°Π±ΠΎΡ‚Π° с ΠΎΠ΄Π½ΠΈΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ с Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ²

Π‘ ΠΎΠ΄Π½ΠΈΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ с Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ нСсколько Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ Π²Ρ‹ сами, Ссли Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Π΄ΠΎΠΌΠ° ΠΈ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅.

Для получСния ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ с ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

git pull

Если Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ваши Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° git pull выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ. Если Π²Ρ‹ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈΠ· ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:
git fetch --all
git reset --hard github/master

ВмСсто github ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ вашСго ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ зарСгистрировали ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git push -u.

Как ΠΌΡ‹ ΡƒΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ измСнСния Π²Ρ‹Π»ΠΎΠΆΠΈΡ‚ΡŒ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°:

git push

Π’ случаС, Ссли Π² ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π»Π΅ΠΆΠ°Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ с вСрсиСй Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²ΠΎΠΉ, Ρ‡Π΅ΠΌ Ρƒ вас Π² локальном, Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° git push выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ. Если Π²Ρ‹ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ нСсмотря Π½Π° ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ вСрсий, Ρ‚ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git push -f

Иногда Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚ΡŒ ваши Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ измСнСния ΠΈ ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Π² ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Для этого ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚Π΅ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ измСнСния ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git stash

ПослС выполнСния этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ваша локальная дирСктория Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΏΡ€ΠΈ послСднСм ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git pull ΠΈ послС этого Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ваши измСнСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΎΡ‚Π»ΠΎΠΆΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
git stash pop

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

ΠœΡ‹ рассмотрСли Π±Π°Π·ΠΎΠ²Ρ‹Π΅ сцСнарии Ρ€Π°Π±ΠΎΡ‚Ρ‹ с систСмами Git ΠΈ Github. КаТдая привСдСнная Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большС ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈ соотвСтствСнно возмоТностСй. ΠŸΠΎΡΡ‚Π΅ΠΏΠ΅Π½Π½ΠΎΠ΅ ΠΈΡ… ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ даст Π²Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π΅Ρ€Π΅Π³Π°Ρ‚ΡŒ свои ΠΈΡ…ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΈ большС ΠΊΠΎΠ½Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ нСпосрСдствСнно Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅.

habr.com

GitHub ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, 12 возмоТностСй

Π₯ΠΎΡ‚ΡŒ ΡƒΠ±Π΅ΠΉΡ‚Π΅, Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ вступлСния, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ…

МалСнький словарик

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

Fork – Β«Ρ€Π°Π·Π²ΠΈΠ»ΠΊΠ°Β». По сути Π²Ρ‹ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚Π΅ сСбС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π° Π΅Π³ΠΎ основС Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ

Pull request β€” запрос Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° внСсСнных Π²Π°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² основной ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ этот ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ внСсСн Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС подтвСрТдСния Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅ΠΌ рСпозитория ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅)

Pull – Β«Π²Ρ‚ΡΠ½ΡƒΡ‚ΡŒΒ» (Π² IDE Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€) ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с GitHub

Push – Β«Π²Ρ‹Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΒ» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ c локальной ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π½Π° GitHub

#1 Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π½Π° GitHub.com

Начну с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΌΠ½Π΅ каТСтся, ΠΈ Ρ‚Π°ΠΊ всСм извСстно (хотя Π»ΠΈΡ‡Π½ΠΎ я ΠΈ Π½Π΅ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°Π» ΠΎΠ± этом Π΅Ρ‰Π΅ нСдСлю Π½Π°Π·Π°Π΄). ΠŸΡ€ΠΈ просмотрС любого тСкстового Ρ„Π°ΠΉΠ»Π° Π½Π° сайтС GitHub, Π² любом Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, справа свСрху ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ малСнький ΠΊΠ°Ρ€Π°Π½Π΄Π°ΡˆΠΈΠΊ. Если Ρ‰Ρ‘Π»ΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΌΡƒ, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ». По Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Propose file change («ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°») ΠΈ GitHub создаст Ρ€Π°Π·Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ рСпозитория (fork) ΠΈ запрос Π½Π° внСсСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Pull Request). ΠŸΠΎΡ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½Π΅ ΠΏΡ€Π°Π²Π΄Π° Π»ΠΈ? Он сам создаСт fork! НСт Π½ΡƒΠΆΠ΄Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΊ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΊ сСбС ΠΊΠΎΠ΄, Π²Π½ΠΎΡΠΈΡ‚ΡŒ локально измСнСния ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π½Π° GitHub c Pull Request’ΠΎΠΌ. ΠžΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ссли Π½ΡƒΠΆΠ½ΠΎ внСсти ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ. Π½Π΅ совсСм настоящий Pull Request

#2 Вставка ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

Описания ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ тСкстовыми коммСнтариями. Π—Π½Π°Π΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ изобраТСния прямо ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°? ΠŸΡ€ΠΈ вставкС Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Π΅Π³ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ (нСсомнСнно, Π² «ΠΎΠ±Π»Π°ΠΊΠΎ») ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π² Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ для отобраТСния изобраТСния. Π˜Π·ΡΡ‰Π½ΠΎ!

#3 Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°, Π½Π°Ρ‡Π½ΠΈΡ‚Π΅ с Ρ‚Ρ€Ρ‘Ρ… ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ β€” ΠΈ GitHub попытаСтся ΡƒΠ³Π°Π΄Π°Ρ‚ΡŒ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ языкС программирования Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅. Но Ссли Π²Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π° Π½Π° Ρ‚Π°ΠΊΠΈΡ… языках программирования, ΠΊΠ°ΠΊ Vue, Typescript ΠΈΠ»ΠΈ JSX, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ язык, Ρ‡Ρ‚ΠΎΠ±Ρ‹ подсвСтка синтаксиса Π±Ρ‹Π»Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° «`jsx Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС: …ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΊΠΎΠ΄Π°: (это распространяСтся ΠΈ Π½Π° Gist, кстати. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ для гиста Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ .jsf, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΡΠ²Π΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ синтаксис JSF). Π’ΠΎΡ‚ список всСх ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… синтаксисов.

#4 Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ «ΠΌΠ°Π³ΠΈΡ‡Π΅ΡΠΊΠΈΡ… слов» Π² Pull Request’ах

Допустим, Π²Ρ‹ создаСтС Pull Request, ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ #234. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ тСкст «ΠΈΡΠΏΡ€Π°Π²Π»ΡΠ΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ #234» Π² описаниС вашСго запроса (ΠΈΠ»ΠΈ Π² любом мСстС любого коммСнтария ΠΊ запросу Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅). ПослС этого слияниС Pull Request’а «автомагичСски» Π·Π°ΠΊΡ€ΠΎΠ΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ. ΠšΡ€ΡƒΡ‚ΠΎ, Π½Π΅ Ρ‚Π°ΠΊ Π»ΠΈ? Π’ΠΎΡ‚ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± этом Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

#5 Бсылка Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

Π’Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ Π»ΠΈ Π²Π°ΠΌ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ссылку Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, Π° Π²Ρ‹ Π½Π΅ Π·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ? Π­Ρ‚ΠΈ Π΄Π½ΠΈ Π΄Π°Π²Π½ΠΎ ΠΏΡ€ΠΎΡˆΠ»ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ я Ρ€Π°ΡΠΊΡ€ΠΎΡŽ Π²Π°ΠΌ сСкрСт: для создания ссылки Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ просто Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π½Π° Π΄Π°Ρ‚Π΅/Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ рядом с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅, Ρƒ gaearon’Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΅ΡΡ‚ΡŒ Ρ„ΠΎΡ‚ΠΊΠ°!

#6 Бсылка Π½Π° ΠΊΠΎΠ΄

Π˜Ρ‚Π°ΠΊ, Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ссылку Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ строку ΠΊΠΎΠ΄Π°. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅: Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° Π½ΠΎΠΌΠ΅Ρ€Π΅ строки рядом с Π½ΡƒΠΆΠ½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Π£Ρ… Ρ‚Ρ‹, Π²ΠΈΠ΄ΠΈΡ‚Π΅? URL помСнялся, Π² Π½Ρ‘ΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΈΠ΄Π΅Π½ Π½ΠΎΠΌΠ΅Ρ€ строки! Если ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ SHIFT ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° Π½ΠΎΠΌΠ΅Ρ€ Π΄Ρ€ΡƒΠ³ΠΎΠΉ строки, Ρ‚ΠΎ – вуаля! – URL помСняСтся Π΅Ρ‰Π΅ Ρ€Π°Π·, ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ подсвСчСн Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ строк. Π­Ρ‚ΠΎΡ‚ URL Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ строк. Но ΠΏΠΎΠ³ΠΎΠ΄ΠΈΡ‚Π΅, ΠΎΠ½ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. А Ρ‡Ρ‚ΠΎ, Ссли Ρ„Π°ΠΉΠ» помСняСтся? НавСрноС, Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π°, Π² этом случаС, постоянная ссылка Π½Π° Ρ„Π°ΠΉΠ» Π² Π΅Π³ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ состоянии. Π― ΠΎΡ‡Π΅Π½ΡŒ Π»Π΅Π½ΠΈΠ²Ρ‹ΠΉ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ сдСлал ΠΎΠ΄ΠΈΠ½ снимок экрана для всСго Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ: ΠšΡΡ‚Π°Ρ‚ΠΈ, насчСт URL’ΠΎΠ²…

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

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ GitHub с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ UI ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Но ΠΈΠ½ΠΎΠ³Π΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ мСсто, быстрСС окаТСтся просто Π½Π°Π±Ρ€Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² URL. НапримСр, Ссли ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Π²Π΅Ρ‚ΠΊΡƒ, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ я Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ отличия Π΅Ρ‘ ΠΎΡ‚ Π²Π΅Ρ‚ΠΊΠΈ master, я ΠΌΠΎΠ³Ρƒ просто ввСсти /compare/имя_Π²Π΅Ρ‚ΠΊΠΈ послС ΠΈΠΌΠ΅Π½ΠΈ рСпозитория. ПослС этого я ΠΏΠΎΠΏΠ°Π΄Ρƒ Π½Π° страницу Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ для Π΄Π°Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ: Но это отличия ΠΎΡ‚ Π²Π΅Ρ‚ΠΊΠΈ master, Ссли ΠΆΠ΅ я Ρ€Π°Π±ΠΎΡ‚Π°Π» Π΄ΠΎ этого с Π²Π΅Ρ‚ΠΊΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ, Ρ‚ΠΎ ΠΌΠΎΠ³Ρƒ ввСсти Π² URL /compare/integration-branch…my-branch Для Π»ΡŽΠ±ΠΈΡ‚Π΅Π»Π΅ΠΉ горячих клавиш: CTRL+L ΠΈΠ»ΠΈ CMD+L ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ курсор Π² строку URL (ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… Chrome ΠΈ Firefox). Π­Ρ‚ΠΎ, Π² сочСтании с Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ. Π‘ΠΎΠ²Π΅Ρ‚ ΠΎΡ‚ ΠΏΡ€ΠΎΡ„ΠΈ: Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ стрСлками для пСрСмСщСния ΠΏΠΎ прСдлоТСниям автодополнСния Chrome ΠΈ Π½Π°ΠΆΠΈΠΌΠ°ΠΉΡ‚Π΅ SHIFT+DELETE для удалСния элСмСнтов ΠΈΠ· истории (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, послС слияния Π²Π΅Ρ‚ΠΊΠΈ). (НС знаю, Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ Π»Π΅Π³Ρ‡Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ эти горячиС сочСтания клавиш, Ссли Π±ΡƒΠ΄Ρƒ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π½ΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π», Π²ΠΎΡ‚ Ρ‚Π°ΠΊ SHIFT + DELETE. Но Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ «+» Π½Π΅ являСтся ΠΈΡ… Ρ‡Π°ΡΡ‚ΡŒΡŽ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ этот Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π΅ нравится. ИмСнно ΠΈΠ·-Π·Π° Ρ‚Π°ΠΊΠΈΡ… Π²Π΅Ρ‰Π΅ΠΉ я ΠΈ Π½Π΅ сплю ΠΏΠΎ Π½ΠΎΡ‡Π°ΠΌ, Π ΠΎΠ½Π΄Π°.)

#8 Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ списков для ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ

Π₯ΠΎΡ‚ΠΈΡ‚Π΅ Π»ΠΈ Π²Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² вашСм описании ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ присутствовал чСкбокс? И Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π»ΠΈ Π²Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈ просмотрС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈΠ· списка ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π»Π°ΡΡŒ элСгантная полоска Π²Ρ€ΠΎΠ΄Π΅ «2 ΠΈΠ· 5»? Никаких ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ! Π‘ΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ-Ρ„Π»Π°ΠΆΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ синтаксиса:
  • [ ] Screen width (integer)
  • [x] Service worker support
  • [x] Fetch support
  • [ ] CSS flexbox support
  • [ ] Custom elements
Бинтаксис: ΠΏΡ€ΠΎΠ±Π΅Π», дСфис, ΠΏΡ€ΠΎΠ±Π΅Π», ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π°ΡΡΡ квадратная скобка, ΠΏΡ€ΠΎΠ±Π΅Π» (ΠΈΠ»ΠΈ x), Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π°ΡΡΡ квадратная скобка, ΠΏΡ€ΠΎΠ±Π΅Π» ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ слова. ПослС этого Π²Ρ‹ смоТСтС Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ/ΡƒΠ±ΠΈΡ€Π°Ρ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΠΈ с этих ΠΊΠ½ΠΎΠΏΠΎΠΊ! МнС это, ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ, каТСтся ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ тСхничСским Π²ΠΎΠ»ΡˆΠ΅Π±ΡΡ‚Π²ΠΎΠΌ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΠΈ! И ΠΏΡ€ΠΈ этом исходный тСкст мСняСтся! Π‘Ρ‚Ρ€Π°ΡˆΠ½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°ΡŽΡ‚ дальшС. А, ΠΈ Ссли эта ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π΅ΡΡ‚ΡŒ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ‚ΠΎ Ρ‚Π°ΠΌ Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Ρ…ΠΎΠ΄ выполнСния: Если Π²Π°ΠΌ нСпонятно, Ρ‡Ρ‚ΠΎ я имСю Π² Π²ΠΈΠ΄Ρƒ ΠΏΠΎΠ΄ «ΠΏΠ°Π½Π΅Π»ΡŒΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°» – Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π½ΠΈΠΆΠ΅. ВсСго Π½Π° ΠΏΠ°Ρ€Ρƒ сантимСтров Π½ΠΈΠΆΠ΅ Π½Π° этой страницС.

#9 ПанСли ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² GitHub

Для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² я всСгда использовал Jira. А для своих Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² я всСгда использовал Trello. Оба этих инструмСнта ΠΌΠ½Π΅ ΠΎΡ‡Π΅Π½ΡŒ нравятся. Когда нСсколько нСдСль Π½Π°Π·Π°Π΄ я ΡƒΠ·Π½Π°Π», Ρ‡Ρ‚ΠΎ GitHub ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ свой собствСнный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, прямо Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ Projects рСпозитория, я ΠΏΠΎΠ΄ΡƒΠΌΠ°Π», Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ смысл ΠΏΡ€ΠΎΠ΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ Π·Π°Π΄Π°Ρ‡, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ я ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Π² Trello. НичСго вСсСлого Ρ‚ΡƒΡ‚ Π½Π΅Ρ‚ А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ‚ΠΎ ΠΆΠ΅ самоС Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ GitHub: ΠŸΠΎΡΡ‚Π΅ΠΏΠ΅Π½Π½ΠΎ ваши Π³Π»Π°Π·Π° ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ½ΡƒΡ‚ ΠΊ нСконтрастному ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ Π Π°Π΄ΠΈ ускорСния я Π΄ΠΎΠ±Π°Π²ΠΈΠ» всС Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² Π²ΠΈΠ΄Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ (notes), Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ½ΠΈ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ «Π½Π°ΡΡ‚оящими» ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ (issues) GitHub. Но ΠΌΠΎΡ‰ΡŒ управлСния Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ Π² GitHub состоит Π² ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ – Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ, вСроятно, Π»ΡƒΡ‡ΡˆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈΠ· рСпозитория Π½Π° панСль. НаТмитС Add Cards Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΠΏΡ€Π°Π²ΠΎΠΌ ΡƒΠ³Π»Ρƒ ΠΈ Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ. Π—Π΄Π΅ΡΡŒ пригодится ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ синтаксис поиска: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅ is:pr is:open ΠΈ Π²Ρ‹ смоТСтС ΠΏΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ любой ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ Pull Request Π½Π° панСль, ΠΈΠ»ΠΈ label:bug, Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ошибки. А Π΅Ρ‰Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ Π² ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‘ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² ΠΏΡ€Π°Π²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ. Она ΠΏΠΎΠΏΠ°Π΄Ρ‘Ρ‚ Π² список triage Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ смоТСтС Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, Π² ΠΊΠ°ΠΊΠΎΠΉ столбСц Π΅Ρ‘ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Когда описаниС «Ρ‚аска» находится Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ этот таск ΠΊΠΎΠ΄, это ΠΎΡ‡Π΅Π½ΡŒ (ΠΎΠΎΠΎΠΎΠΎΡ‡Π΅Π½ΡŒ) ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚ Π²Ρ‹ смоТСтС Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git blame для ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ строки ΠΊΠΎΠ΄Π° ΠΈ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ всю ΠΏΠΎΠ΄ΠΎΠΏΠ»Ρ‘ΠΊΡƒ Π·Π°Π΄Π°Ρ‡ΠΈ, которая ΠΊ этой строкС ΠΏΡ€ΠΈΠ²Π΅Π»Π°, Π±Π΅Π· Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ это всё Π² Jira/Trello/Π΅Ρ‰Π΅ Π³Π΄Π΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ.

НСдостатки

ПослСдниС Ρ‚Ρ€ΠΈ Π½Π΅Π΄Π΅Π»ΠΈ я экспСримСнтировал с Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ всСх Π·Π°Π΄Π°Ρ‡ Π² GitHub вмСсто Jira (Π½Π° малСньком ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π² стилС Канбан) ΠΈ ΠΌΠ½Π΅ это ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΎΡΡŒ. Но я Π½Π΅ ΠΌΠΎΠ³Ρƒ сСбС ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ это для scrum-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π³Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅. Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ Π½ΠΎΠ²ΠΎΡΡ‚ΡŒ: Ρƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² GitHub Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ°Π»ΠΎ «ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚Π΅ΠΉ», Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ систСму Π½Π΅ Π·Π°ΠΉΠΌΠ΅Ρ‚, Π² случаС Ρ‡Π΅Π³ΠΎ, ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅, посмотрим, насколько Π²Π°ΠΌ понравится. НС знаю, насколько это Π²Π°ΠΆΠ½ΠΎ, Π½ΠΎ я ΡΠ»Ρ‹ΡˆΠ°Π» ΠΏΡ€ΠΎ ZenHub ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π» Π΅Π³ΠΎ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ 10 ΠΌΠΈΠ½ΡƒΡ‚ Π½Π°Π·Π°Π΄. ЀактичСски это Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ GitHub, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ «epics» ΠΈ зависимости. Π’Π°ΠΌ Π΅ΡΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ скорости Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ выгорания; ΠΏΠΎΡ…ΠΎΠΆΠ΅, Ρ‡Ρ‚ΠΎ это просто ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰Π°Ρ Π²Π΅Ρ‰ΡŒ. Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅Π΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅: докумСнтация GitHub ΠΏΠΎ Projects.

#10 Gwiki

Для нСструктурированного Π½Π°Π±ΠΎΡ€Π° страниц – ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ – GitHub Wiki (ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Π±ΡƒΠ΄Ρƒ Π΄Π°Π»Π΅Π΅ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ просто Gwiki) просто Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½Π°. Для структурированного ΠΆΠ΅ Π½Π°Π±ΠΎΡ€Π° страниц – Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ ваша докумСнтация – ΡƒΠΆΠ΅ Π½Π΅ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΠ΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ «Π²ΠΎΡ‚ эта страница – дочСрняя ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π²ΠΎΡ‚ Ρ‚ΠΎΠΉ», Π½Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΡ… ΡƒΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π·Π΄Π΅Π»» ΠΈ «ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ Ρ€Π°Π·Π΄Π΅Π»». Π“Π΅Π½Π·Π΅Π»ΡŒ ΠΈ Π“Ρ€Π΅Ρ‚Π΅Π»ΡŒ Ρ‚ΡƒΡ‚ Π±Ρ‹ Ρ‚ΠΎΡ‡Π½ΠΎ Π·Π°Π±Π»ΡƒΠ΄ΠΈΠ»ΠΈΡΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ «Ρ…Π»Π΅Π±Π½Ρ‹Ρ… ΠΊΡ€ΠΎΡˆΠ΅ΠΊ» (ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² – ΠΏΡ€ΠΈΠΌ. ΠΏΠ΅Ρ€Π΅Π².) Ρ‚ΡƒΡ‚ Ρ‚ΠΎΠΆΠ΅ Π½Π΅Ρ‚. (ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΡ€Π°: Π’Ρ‹ Ρ‡ΠΈΡ‚Π°Π»ΠΈ эту ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ? Она просто бСсчСловСчна. Π”Π²ΠΎΠ΅ ΡŽΠ½Ρ‹Ρ… ΠΎΡ‚ΠΌΠΎΡ€ΠΎΠ·ΠΊΠΎΠ² ΡƒΠ±ΠΈΠ²Π°ΡŽΡ‚ Π½Π΅ΡΡ‡Π°ΡΡ‚Π½ΡƒΡŽ Π³ΠΎΠ»ΠΎΠ΄Π½ΡƒΡŽ ΡΡ‚Π°Ρ€ΡƒΡˆΠΊΡƒ, сТигая Π΅Ρ‘ Π·Π°ΠΆΠΈΠ²ΠΎ Π² Π΅Ρ‘ собствСнной ΠΏΠ΅Ρ‡ΠΈ. И ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, оставляя нСпонятно ΠΊΠΎΠΌΡƒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ бСспорядок. МнС каТСтся, ΠΈΠΌΠ΅Π½Π½ΠΎ поэтому молодСТь Π² наши Π΄Π½ΠΈ адски Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Π° – Π² наши Π΄Π½ΠΈ сказки, Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Π΅ дСтям ΠΏΠ΅Ρ€Π΅Π΄ сном, нСдостаточно ТСстоки!) ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ – Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Gwiki Π½Π° Π΄Π΅Π»Π΅, я Π²Π²Π΅Π» нСсколько страниц ΠΈΠ· NodeJS Π² качСствС страниц Π²ΠΈΠΊΠΈ, послС Ρ‡Π΅Π³ΠΎ создал ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Π±ΠΎΠΊΠΎΠ²ΡƒΡŽ панСль, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½ΡƒΡŽ структуру сайта. Π­Ρ‚Π° боковая панСль находится Ρ‚Π°ΠΌ постоянно, хотя тСкущая страница ΠΈ Π½Π΅ подсвСчиваСтся. Бсылки придСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Π½ΠΎ Π² Ρ†Π΅Π»ΠΎΠΌ всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ. Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ: Π­Ρ‚ΠΎ вряд Π»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΏΠ΅Ρ€Π½ΠΈΡ‡Π°Ρ‚ΡŒ с Ρ‡Π΅ΠΌ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ GitBook (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Redux) ΠΈΠ»ΠΈ сдСланным Π½Π° Π·Π°ΠΊΠ°Π· Π²Π΅Π±-сайтом. Но это ΡƒΠΆΠ΅ Π΄ΠΎΠ±Ρ€Ρ‹Ρ… 80% ΠΎΡ‚ Π½Π΅Π³ΠΎ ΠΈ всС прямо Π² вашСм Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Π― просто Ρ„Π°Π½Π°Ρ‚ этого. ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ: Ссли Π²Ρ‹ ΡƒΠΆΠ΅ пСрСросли этап использования ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° README.md ΠΈ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… страниц для руководств ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° Gwiki. Если ΠΆΠ΅ отсутствиС структуры/Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ Π²Π°ΠΌ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ Π½Π° Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ Π΅Ρ‰Ρ‘.

#11 GitHub Pages

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ GitHub Pages ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для размСщСния статичСского сайта. А Ссли Π½Π΅ Π·Π½Π°Π»ΠΈ, Ρ‚ΠΎ Π·Π½Π°Π΅Ρ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ. Однако этот Ρ€Π°Π·Π΄Π΅Π» посвящСн Π±ΠΎΠ»Π΅Π΅ ΡƒΠ·ΠΊΠΎΠΌΡƒ вопросу: использованию Jekyll для создания сайта. Π’ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅, GitHub Pages + Jekyll ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» README.md с использованиСм приятной Π³Π»Π°Π·Ρƒ Ρ‚Π΅ΠΌΡ‹. НапримСр, взглянитС Π½Π° мою страницу readme ΠΈΠ· about-github: Если Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ settings («Π½Π°ΡΡ‚Ρ€ΠΎΠΉΠΊΠΈ») для этого сайта Π½Π° GitHub, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ GitHub Pages ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚Π΅ΠΌΡƒ Jekyll… Π’ΠΎ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ страницу Π² стилС Ρ‚Π΅ΠΌΡ‹ Jekyll: ПослС этого ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ статичСский сайт Π½Π° основС, Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π»Π΅Π³ΠΊΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, ΠΏΠΎ сущСству, прСвращая GitHub Π² CMS. Π₯отя фактичСски я этого Π½Π΅ использовал, ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ сайты Π½Π° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ΅ Bootstrap с использованиСм React, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ уТасного Π² этом Π½Π΅Ρ‚. ΠžΡ‚ΠΌΠ΅Ρ‡Ρƒ, Ρ‡Ρ‚ΠΎ Π½Π° локальной машинС Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½ Ruby (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Windows Ρ‚ΡƒΡ‚ ΠΎΠ±ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΌΠΈ взглядами ΠΈ ΠΏΠΎΠΉΠ΄ΡƒΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΡƒΡ‚Ρ‘ΠΌ, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ macOS скаТут: «Π’ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, Π²Ρ‹ ΠΊΡƒΠ΄Π°? Ruby – ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°! Π’Π°ΠΌ ΠΆΠ΅ Π΅ΡΡ‚ΡŒ систСма управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ GEMS!») (Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎ «ΠΠ³Ρ€Π΅ΡΡΠΈΠ²Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ ΡƒΠ³Ρ€ΠΎΠΆΠ°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅» Π² GitHub Pages нСдопустимы, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ смоТСтС Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΌ свою Π²Π΅Ρ€ΡΠΈΡŽ истории ΠΏΡ€ΠΎ ГСнзСля ΠΈ Π“Ρ€Π΅Ρ‚Π΅Π»ΡŒ).

МоС мнСниС

Π§Π΅ΠΌ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½Π΅Π΅ я ΠΈΠ·ΡƒΡ‡Π°Π» связку GitHub Pages + Jekyll (для этой ΡΡ‚Π°Ρ‚ΡŒΠΈ), Ρ‚Π΅ΠΌ большС ΠΌΠ½Π΅ казалось, Ρ‡Ρ‚ΠΎ вся эта идСя странно ΠΏΠΎΠΏΠ°Ρ…ΠΈΠ²Π°Π΅Ρ‚. ИдСя «ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ свой собствСнный Π²Π΅Π±-сайт с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… усилий» Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Π°. Но для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ Π½ΠΈΠΌ всС Ρ€Π°Π²Π½ΠΎ трСбуСтся Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° локальной машинС. И для Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ ΡΡ‚ΠΎΠ»ΡŒ «ΠΏΡ€ΠΎΡΡ‚ΠΎΠ³ΠΎ» Ρ‚ΡƒΡ‚ слишком ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. Π― Π±Π΅Π³Π»ΠΎ просмотрСл сСмь страниц ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π° Getting Started ΠΈ почувствовал, Ρ‡Ρ‚ΠΎ СдинствСнноС, Ρ‡Ρ‚ΠΎ Ρ‚ΡƒΡ‚ простого – это я сам. И это я Π΅Ρ‰Π΅ Π΄Π°ΠΆΠ΅ Π½Π΅ разобрался с простым синтаксисом для Π³Π»Π°Π²Π½ΠΎΠΉ страницы ΠΈΠ»ΠΈ Π°Π·Π°ΠΌΠΈ простого «ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° основС языка Liquid». Π£ΠΆ Π»ΡƒΡ‡ΡˆΠ΅ я Π½Π°ΠΏΠΈΡˆΡƒ Π²Π΅Π±-сайт ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ! Если чСстно, я Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΈΠ²Π»Π΅Π½, Ρ‡Ρ‚ΠΎ Facebook ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ это для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ React, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹, вСроятно, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ страницы ΠΈΡ… систСмы ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ React ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π² Π²ΠΈΠ΄Π΅ статичСских HTML-Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь. ВсС, Ρ‡Ρ‚ΠΎ ΠΈΠΌ Π½ΡƒΠΆΠ½ΠΎ – всСго лишь Π½Π°ΠΉΡ‚ΠΈ способ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΎΠ½ΠΈ поступали ΠΈΠ· CMS. А Ρ‡Ρ‚ΠΎ, Ссли…

#12 ИспользованиС GitHub Π² качСствС CMS

Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ Π²Π΅Π±-сайт с ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ тСкстом, Π½ΠΎ Π½Π°ΠΌ Π½Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ этот тСкст Π² Π²ΠΈΠ΄Π΅ HTML-Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ. ВмСсто этого, ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π³Π΄Π΅-Ρ‚ΠΎ куски тСкста, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… ΠΌΠΎΠ³Π»ΠΈ Π»Π΅Π³ΠΊΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, Π½Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ. Π–Π΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, с ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ управлСния вСрсиями. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄Π°ΠΆΠ΅ с ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΎΠΉ рСцСнзирования. Π’ΠΎΡ‚ Ρ‡Ρ‚ΠΎ я ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Ρ„Π°ΠΉΠ»Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ для хранСния тСкста. И ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π² клиСнтской части, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π» эти куски тСкста ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π» ΠΈΡ… Π½Π° страницС. Π― ΠΏΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊ React, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, ΠΏΡ€ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡƒΡ‚ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ, ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Ρ‚ Π΅Π³ΠΎ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ синтаксичСский Ρ€Π°Π·Π±ΠΎΡ€ ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π² Π²ΠΈΠ΄Π΅ HTML.
class Markdown extends React.Component {
    constructor(props) {
      super(props);

      
      this.baseUrl = 'https://raw.githubusercontent.com/davidgilbertson/about-github/master/text-snippets';

      this.state = {
        markdown: '',
      };
    }

    componentDidMount() {
      fetch(`${this.baseUrl}/${this.props.url}`)
        .then(response => response.text())
        .then((markdown) => {
          this.setState({markdown});
        });
    }

    render() {
      return (
        <div dangerouslySetInnerHTML={{__html: marked(this.state.markdown)}} />
      );
    }
}
(я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Ρ‚ΡƒΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ npm marked для синтаксичСского Ρ€Π°Π·Π±ΠΎΡ€Π° Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ Π² HTML) URL ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΌΠΎΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /text-snippets ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π»Π΅ΠΆΠ°Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ. (МоТно Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ API GitHub для получСния ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, Π½ΠΎ я сомнСваюсь, Ρ‡Ρ‚ΠΎ это Π²Π°ΠΌ пригодится) Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
const Page = () => (
  <div className="page">
    <div className="about-us">
      <Markdown url="about-us.md" />
    </div>

    <div className="disclaimer">
      <p>A very important disclaimer:</p>

      <Markdown url="disclaimers/home-page-disclaimer.md" />
    </div>
  </div>
);
Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ GitHub ΠΈΠ³Ρ€Π°Π΅Ρ‚ Ρ€ΠΎΠ»ΡŒ, Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€ΠΎΠ΄Π΅, вашСго CMS, для Ρ‚Π΅Ρ… кусков тСкста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ. Π’Ρ‹ΡˆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ статичСский сайт, Ρ‚ΠΎ придСтся Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π° сСрвСрС. Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ Π½ΠΎΠ²ΠΎΡΡ‚ΡŒ! Ничто Π½Π΅ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π²Π°ΠΌ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ Π½Π° сСрвСрС (ΠΏΡ€ΠΈ использовании любой ΡƒΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉ вас стратСгии ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ). Если Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΏΠΎΠΉΡ‚ΠΈ этим ΠΏΡƒΡ‚Π΅ΠΌ, Ρ‚ΠΎ Π²Π°ΠΌ ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ API GitHub, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список всСх Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Бонус – ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ GitHub! Π― ΡƒΠΆΠ΅ довольно Π΄Π°Π²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Octotree для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Chrome ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Π΅Π³ΠΎ Π²Π°ΠΌ. НС Π±Π΅Π· ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΎΠΊ, Π½ΠΎ всС ΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ. Оно ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ слСва панСль с Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½Ρ‹ΠΌ прСдставлСниСм просматриваСмого рСпозитория. А ΠΈΠ· этого Π²ΠΈΠ΄Π΅ΠΎ я ΡƒΠ·Π½Π°Π» ΠΏΡ€ΠΎ octobox, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ прСдставляСтся ΠΌΠ½Π΅ вСсьма Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ΠΎΠΉ. Π­Ρ‚ΠΎ ΠΏΠ°ΠΏΠΊΠ° для входящих для Π²Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ GitHub. Π­Ρ‚ΠΎ всё, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎ Π½Ρ‘ΠΌ Π·Π½Π°Ρ‚ΡŒ. Говоря ΠΎ Ρ†Π²Π΅Ρ‚Π°Ρ…, я сдСлал всС Π²Ρ‹ΡˆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ снимки экрана Π² свСтлой Ρ‚Π΅ΠΌΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ вас Π½Π΅ ΠΏΡƒΠ³Π°Ρ‚ΡŒ. Но Ссли Π²ΠΎ всём ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ я ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽ Ρ‚Π΅ΠΌΠ½Ρ‹Π΅ Ρ†Π²Π΅Ρ‚Π°, Ρ‚ΠΎ Π·Π°Ρ‡Π΅ΠΌ Ρ‚Π΅Ρ€ΠΏΠ΅Ρ‚ΡŒ ΠΌΠ΅Ρ€Ρ‚Π²Π΅Π½Π½ΠΎ-Π±Π»Π΅Π΄Π½Ρ‹ΠΉ GitHub? Π—Π΄Π΅ΡΡŒ я использовал сочСтаниС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Stylish для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Chrome (ΡƒΠΌΠ΅ΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚Π΅ΠΌΡ‹ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ Π²Π΅Π±-сайту) ΠΈ стиля GitHub Dark. И Π½Π° закуску, тСмная Ρ‚Π΅ΠΌΠ° инструмСнтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° GitHub (встроСнная, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ) ΠΈ Ρ‚Π΅ΠΌΠ° Atom One Dark для Chrome.

Bitbucket

Π‘Ρ‚Ρ€ΠΎΠ³ΠΎ говоря, ΠΎΠ½ здСсь Π½Π΅ совсСм умСстСн, Π½ΠΎ я просто Π½Π΅ ΠΌΠΎΠ³Ρƒ Π½Π΅ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ Bitbucket. Π”Π²Π° Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ я Π½Π°Ρ‡ΠΈΠ½Π°Π» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π» полдня Π·Π° Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ git-хостинга. Π’Π°ΠΊ Π²ΠΎΡ‚, Bitbucket Π²Ρ‹ΠΈΠ³Ρ€Π°Π» с сущСствСнным ΠΎΡ‚Ρ€Ρ‹Π²ΠΎΠΌ. Π˜Ρ… ΠΏΠΎΡ‚ΠΎΠΊ рСцСнзирования ΠΊΠΎΠ΄Π° ΡƒΡˆΠ΅Π» Π΄Π°Π»Π΅ΠΊΠΎ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΎΠ² (это Π±Ρ‹Π»ΠΎ Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π² GitHub появилось хотя Π±Ρ‹ понятиС Ρ€Π΅Ρ†Π΅Π½Π·Π΅Π½Ρ‚Π°). Π‘ Ρ‚Π΅Ρ… ΠΏΠΎΡ€ GitHub Ρ‚ΠΎΠΆΠ΅ обзавСлся рСцСнзиями. К соТалСнию, послСдний Π³ΠΎΠ΄ ΠΌΠ½Π΅ Π½Π΅ доводилось ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Bitbucket – Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠ½ΠΈ ΠΎΠΏΡΡ‚ΡŒ ΡƒΡˆΠ»ΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄ Π² Ρ‡Ρ‘ΠΌ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ я Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Π²Ρ‹Π±ΠΎΡ€ git-хостинга, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ Π½Π° Bitbucket.

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

Π’ΠΎΡ‚ ΠΈ всё! НадСюсь, Ρ‡Ρ‚ΠΎ сумСл Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π°ΠΌ хотя Π±Ρ‹ Ρ‚Ρ€ΠΈ Ρ€Π°Π½Π΅Π΅ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ… Π²Π°ΠΌ Π²Π΅Ρ‰ΠΈ. И Π΅Ρ‰Ρ‘ надСюсь, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ врСмя Π·Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ. ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ: 12 cool things you can do with GitHub

javarush.ru

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ GitHub — ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° C, C# ΠΈ Java

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ GitHub – сначала Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π°Β github.com. Π—Π°Ρ‚Π΅ΠΌ Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ использованию сСрвиса. Π Π°Π±ΠΎΡ‚Π° с VCS Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° двумя способами: Ρ‡Π΅Ρ€Π΅Π· web-интСрфСйс ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Windows ΠΈΠ»ΠΈ Mac. Рассмотрим ΠΎΠ±Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° взаимодСйствия с GitHub.

Π’Π°ΠΊΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ со ΡΡ‚Π°Ρ‚ΡŒΡ‘ΠΉ β€œGitHub – Ρ‡Ρ‚ΠΎ это?β€œ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ рассказываСтся ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, принятой ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с VCS, ΠΈ ΠΎ GitHub Π²ΠΎΠΎΠ±Ρ‰Π΅.

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ GitHub Ρ‡Π΅Ρ€Π΅Π· web-интСрфСйс сайта

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π’Ρ‹ Π²ΠΎΠΉΠ΄Ρ‘Ρ‚Π΅ Π² свою ΡƒΡ‡Ρ‘Ρ‚Π½ΡƒΡŽ запись, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ β€œNew repository”.

Π—Π°Ρ‚Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ ввСсти имя Π½ΠΎΠ²ΠΎΠ³ΠΎ рСпозитория (Repository name), Π΅Π³ΠΎ описаниС (Description) [Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ], Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ: ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠ΅ (ΠΏΠ»Π°Ρ‚Π½ΠΎ), ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ – слСдуСт Π»ΠΈ сразу Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉΒ README-Ρ„Π°ΠΉΠ», Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для Ρ„Π°ΠΉΠ»Π° .gitignore ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ тСкст Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ соглашСния.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ всС Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ β€œCreate repository” для создания рСпозитория.

Π€Π°ΠΉΠ» .gitignore описываСт Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Git Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΒ Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ рСпозитория. МногиС срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΡΠΎΠ·Π΄Π°ΡŽΡ‚ свои систСмныС Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самой IDE ΠΈ Π½Π΅ содСрТат Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° (плюс Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π΅Ρ‰Ρ‘ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ вСсят). Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽΒ .gitignore ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Π—Π°Ρ‚Π΅ΠΌ Π’Ρ‹ ΠΏΠΎΠΏΠ°Π΄Ρ‘Ρ‚Π΅ Π½Π° страницу созданного рСпозитория:

На Π½Π΅ΠΉ прСдставлСн список Ρ„Π°ΠΉΠ»ΠΎΠ², находящихся Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, элСмСнты управлСния ΠΈ Ρ„Π°ΠΉΠ» Readme.

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ – Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ β€œUpload files”.

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ созданиС Π½ΠΎΠ²Ρ‹Ρ… – происходит с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ β€œBranch”.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Новый ΠΏΡƒΠ»Π» запросов создаётся ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ β€œNew pull request”.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… программистов ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ происходит Π² настройках (Settings) Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅Β Collaborators (ΠΊΠΎΠ»Π»Π΅Π³ΠΈ). Для добавлСния соавтора Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π² тСкстовоС ΠΏΠΎΠ»Π΅ Π΅Π³ΠΎ Π»ΠΎΠ³ΠΈΠ½ Π½Π° GitHub ΠΈΠ»ΠΈ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ, ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΈ рСгистрации, ΠΈ Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ β€œAdd collaborator” (Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ»Π»Π΅Π³Ρƒ).

ПослС добавлСния соавторы ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ с использованиСм Π΄Π°Π½Π½ΠΎΠΉ VCS.

ΠŸΡ€ΠΈ нСобходимости Π’Ρ‹ (ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ) ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° свой ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Git-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ ссылки ΠΈΠ»ΠΈ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² Π²ΠΈΠ΄Π΅ zip-Π°Ρ€Ρ…ΠΈΠ²Π°. Π”Π°Π½Π½Ρ‹Π΅ ΠΎΠΏΡ†ΠΈΠΈ доступны ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ β€œClone or download” (ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ).

ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ссылки) ΠΈΠ»ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Git-рСпозитория

Если Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° GitHub, Ρ‚ΠΎ для этого ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² настройки (Settings) ΠΈ Π² самом Π½ΠΈΠ·Ρƒ страницы (Π² Danger Zone), Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΠ° β€œDelete this repository” (ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ).

Π—Π°Ρ‚Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, Π½Π°Π±Ρ€Π°Π² Π² тСкстовом ΠΏΠΎΠ»Π΅ имя удаляСмого рСпозитория.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π‘ΡƒΠ΄ΡŒΡ‚Π΅ остороТны, послС удалСния – Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ!

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ GitHub с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° GitHub Desktop

ΠŸΠ΅Ρ€Π²ΠΎ-Π½Π°ΠΏΠ΅Ρ€Π²ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π° свой ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Git-ΠΊΠ»ΠΈΠ΅Π½Ρ‚. Π˜Ρ… сущСствуСт мноТСство, Π½ΠΎ ΠΌΡ‹ ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ для GitHub. Он доступСн для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ссылкС. Π•ΡΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ для Windows ΠΈ Mac.

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Git-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΠΉΡ‚ΠΈ Π² свою ΡƒΡ‡Ρ‘Ρ‚Π½ΡƒΡŽ запись Π½Π° GitHub.

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π² Π²ΠΈΠ΄Π΅ плюса Π² Π»Π΅Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€ΠΈ этом ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ локальная копия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Π°ΠΊΠΆΠ΅ здСсь ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для Ρ„Π°ΠΉΠ»Π° .gitignore.

Π‘ΠΌΠ΅Π½Π° ΠΈ созданиС Π²Π΅Ρ‚ΠΎΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° осущСствляСтся Π²Π²Π΅Ρ€Ρ…Ρƒ ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

ИзмСнСния, внСсённыС Π² Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎΠ΄ΡΠ²Π΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Git-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² локальноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π²Π²Π΅Π΄Ρ‘ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΈ описаниС [Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ], Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΌΡ‘ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ β€œCommit to”.

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ измСнСния Π² ΠΎΠ±Π»Π°ΠΊΠΎ (Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Push), Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ β€œSync”.

Π’Π°ΠΊΠΆΠ΅ Π² GitHub Desktop имССтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ просмотра истории ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. На ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ Π²Ρ‹ΡˆΠ΅ графичСски ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ всС Π²Π΅Ρ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹. НаТав Π½Π° Π»ΡŽΠ±ΡƒΡŽ ΠΈΠ· Ρ‚ΠΎΡ‡Π΅ΠΊ, ΠΌΠΎΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ.

Бпасибо Π·Π° ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ!

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ GitHub

4.56 (91.25%) 16 votes


ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Π² соц. сСтях:

vscode.ru

15 совСтов ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с Github / Mail.ru Group corporate blog / Habr


Π― 10 Π»Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽ ПО, участвовал Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… open source-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΈ Π² многочислСнных Π½Π΅-open source-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, Ρ€Π°Π±ΠΎΡ‚Π°Π» Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈ ΠΌΠ°Π»Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ…, ΠΈ Π²Π΅Π·Π΄Π΅ ΠΌΡ‹ использовали Github Π² качСствС рСпозитория вСрсионирования.

Π—Π° это врСмя я ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Ρ€Π°Π·Π½Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ процСссы, ΠΈ Ρ…ΠΎΡ‡Ρƒ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ совСтами, ΠΊΠ°ΠΊ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ эффСктивный ΠΈ ΠΏΡ€Π°Π³ΠΌΠ°Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс ΠΏΠΎ созданию ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ качСствСнного ПО, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π² любом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅.

Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² качСствСнного ПО: Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΡΡ‚ΡŒ, ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ, ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ, удобство Π² использовании, тСстировании ΠΈ сопровоТдСнии. И ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ², Π² зависимости ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° прилоТСния. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΡƒΡΡŒ Π½Π° Ρ‚Π°ΠΊΠΈΡ… свойствах:

  • Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ докумСнтация: readme, сайты с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΠΆΡƒΡ€Π½Π°Π»Ρ‹ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
  • ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ расписанныС соглашСния ΠΈ стандарты ΠΊΠΎΠ΄ΠΈΠ½Π³Π°.
  • ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ вСрсионированиС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сСмантичСского вСрсионирования.
  • АвтоматизированныС тСсты: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΈΡ… Π½Π΅ слишком ΠΌΠ½ΠΎΠ³ΠΎ, сосрСдоточимся Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… нСрСгрСссионных тСстах.
  • ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, ΡΡ‡Π°ΡΡ‚ΡŒΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°!

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΡ€Π°Π³ΠΌΠ°Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ open source-инструмСнтов, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰ΠΈΡ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ.

Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² open source-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, Ρ‚ΠΎ навСрняка Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ свой Github-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Git ΠΈ Github ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ способ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ OSS, Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΠ²ΡˆΠΈΡΡŒ, соотвСтствСнно, Π² стандартный язык вСрсионирования ΠΈ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΡƒ для сотрудничСства.

ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ Github’ом Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс называСтся github flow. Он прСкрасно описан Π½Π° сайтС. Π­Ρ‚ΠΎΠ³ΠΎ процСсса, с нСбольшими вариациями, придСрТиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ open source-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

Github Flow ΠΎΡ‡Π΅Π½ΡŒ Π³ΠΈΠ±ΠΎΠΊ Π² Ρ‚ΠΎΠΌ смыслС, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Π΄ΠΈΠΊΡ‚ΡƒΠ΅Ρ‚ Π²Π°ΠΌ, ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π΅Π»ΠΈΠ·ΠΈΡ‚ΡŒ ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния, ΠΊΠ°ΠΊΡƒΡŽ ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ слияния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ pull request’Ρ‹, ΠΊΠ°ΠΊΠΈΠ΅ инструмСнты ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠΌ стандартам ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π΅Ρ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ принятиСм pull request’Π°. Всё это ΠΎΡ‚Π΄Π°Π½ΠΎ Π½Π° вашС усмотрСниС, ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ сдСлано, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ сущСствуСт ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, подходящих всСм ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ.

Π”Π°Π»ΡŒΡˆΠ΅ я ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ список Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ Π½Π° основС ΠΌΠΎΠ΅Π³ΠΎ ΠΎΠΏΡ‹Ρ‚Π°.

По большСй части (ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) я ΠΏΠΈΡˆΡƒ Π½Π° JavaScript, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ упомянутыС ΠΌΠ½ΠΎΠΉ инструмСнты ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ JS-экосистСмы, Π½ΠΎ сами ΠΈΠ΄Π΅ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ Π² любом языкС.

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ отслСТивайтС прогрСсс с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GithubΒ Projects


Π’ сСнтябрС 2016 появилась Ρ„ΠΈΡ‡Π° Projects. Π­Ρ‚ΠΎ инструмСнт, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ доски Π² стилС Kanban для упорядочивания, ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Π·Π°Ρ†ΠΈΠΈ ΠΈ отслСТивания Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ рСпозитория ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ. Если Ρƒ вас Π΅ΡΡ‚ΡŒ затруднСния с использованиСм Github, Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Projects для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… усилиях.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅

ΠšΠ»Π°ΡΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Π³ΠΎΠ²


Github ΠΈΠΌΠ΅Π΅Ρ‚ прСвосходныС возмоТности ΠΏΠΎ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ. Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π΄ open source-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, Ρ‚ΠΎ навСрняка заинтСрСсованы Π² ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… участников, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌ Π±Ρ‹Π»ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Если ΠΏΠΎΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ свои Π·Π°Π΄Π°Ρ‡ΠΈ Ρ‚Π΅Π³Π°ΠΌΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π»Π΅Π³Ρ‡Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² спискС, это сэкономит ΠΈΠΌ врСмя ΠΈ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Github-ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для pull request’ΠΎΠ² ΠΈ Π·Π°Π΄Π°Ρ‡


НС ΠΏΠΎΠΆΠ°Π»Π΅ΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° написаниС Guthub-шаблонов для pull request’ΠΎΠ² ΠΈ информирования ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…. Π­Ρ‚ΠΎ заставит Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² β€” ΠΈΠ»ΠΈ хотя Π±Ρ‹ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌ β€” ΡΠ»Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠΎ Π±Π°Π³Π°Ρ… ΠΈ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ созданиС Ρ„ΠΈΡ‡ Π½Π΅ΠΊΠΈΠΌ стандартным способом, прикладывая всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π²Π°ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ совСты ΠΏΠΎ ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π°ΠΌ ΠΎ Π±Π°Π³Π°Ρ…:

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅:

  • Π£Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ послСднСй вСрсиСй.
  • ΠŸΠΎΠΈΡ‰ΠΈΡ‚Π΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΠΎΠ± этом Π±Π°Π³Π΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΡ‚Ρ‡Ρ‘Ρ‚ ΠΎ Π½Ρ‘ΠΌ ΡƒΠΆΠ΅ Π±Ρ‹Π» Ρ€Π°Π½ΡŒΡˆΠ΅.

ΠžΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠΎ Π±Π°Π³Π°Ρ… Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ:
  • ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС.
  • Как Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с Π±Π°Π³ΠΎΠΌ? Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ ΠΏΠΎ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡŽ.
  • Какого повСдСния Π²Ρ‹ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ ΠΎΡ‚ прилоТСния?
  • Как ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π»ΠΎ сСбя Π½Π° самом Π΄Π΅Π»Π΅?
  • Бсылки Π½Π° всС связанныС с ситуациСй Ρ‚ΠΈΠΊΠ΅Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ источники.
  • По ΠΌΠ΅Ρ€Π΅ возмоТности, ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠΈΡ‚Π΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π±Π°Π³Π°. Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Ρ‹, Π²ΠΈΠ΄Π΅ΠΎ ΠΈ/ΠΈΠ»ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π³ΠΈΡ„Ρ‹.

ΠžΠ±Ρ‰ΠΈΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ pull request’Π°ΠΌ:
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠΎ вашСй ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ Π΅Ρ‰Ρ‘ Π½Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… pull request’ΠΎΠ².
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π² Π±Π°Π³-Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π΅, Π½Π΅ Π±Ρ‹Π»ΠΎ Π»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, связанных с вашим Π±Π°Π³ΠΎΠΌ.
  • ΠΠ΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ измСнСния Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ.
  • Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚Π΅ Π½Π°ΠΌ, Π½Π°Π΄ ΠΊΠ°ΠΊΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅.
  • Π Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ тСматичСской Π²Π΅Ρ‚ΠΊΠ΅, Π° Π½Π΅ Π² мастСрС.
  • ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ описаниС ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ pull request’Π°.
  • Π‘ΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅.
  • ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ описаниС своСго pull request’Π°.
  • Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Π² описании ссылку Π½Π° Github-Π·Π°Π΄Π°Ρ‡Ρƒ.

ΠŸΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой


Консоль β€” ваш Π΄Ρ€ΡƒΠ³. По ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ, освоСниС Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Github Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку β€” Π»ΡƒΡ‡ΡˆΠ°Ρ Ρ‚Ρ€Π°Ρ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΡˆΡŒ с open source-тСхнологиями. Π”Π°, сущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… графичСских интСрфСйсов, Π½ΠΎ всС ΠΎΠ½ΠΈ ΠΌΠ΅Π½Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈ Π² использовании. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΅ΡΡ‚ΡŒ инструмСнты Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сильно ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ Тизнь ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ°ΡŽΡ‚ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:
  • hub β€” ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠ° для Git, ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‰Π°Ρ Ρ€Π°Π±ΠΎΡ‚Ρƒ с GitHub. НС Π²Π°ΠΆΠ½ΠΎ, Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π²Ρ‹ ΠΈΠ»ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΉ open source-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, hub ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΡŽ ΠΏΠΎ страницам ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„ΠΎΡ€ΠΊΠ°ΠΌΠΈ ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ pull request’ΠΎΠ². И всё это ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. hub.github.com
  • tj/git-extras β€” Π½Π°Π±ΠΎΡ€ Git-ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ сводка ΠΏΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ, repl, ΠΆΡƒΡ€Π½Π°Π» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, статистика ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΏΠΎ Π°Π²Ρ‚ΠΎΡ€Π°ΠΌ, ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. github.com/tj/git-extras

Π‘ΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ строгиС стандарты ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСний ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹


ВсСгда опрСдСляйтС ΠΈ ΡΠΎΠ±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ ясныС стандарты написания ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСний. Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:
  • ΠšΠΎΠΌΠΌΠΈΡ‚ΡŒΡ‚Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ фикс ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.
  • ΠŸΠΈΡˆΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСния.
  • ΠŸΠΈΡˆΠΈΡ‚Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСниС Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС (50–100 символов). Если посмотритС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния gitk ΠΈΠ»ΠΈ git log –oneline, Ρ‚ΠΎ ΠΏΠΎΠΉΠΌΡ‘Ρ‚Π΅, ΠΏΠΎΡ‡Π΅ΠΌΡƒ.
  • Π‘ΡΡ‹Π»Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° Git-Π·Π°Π΄Π°Ρ‡Ρƒ Π² Ρ‚Π΅Π»Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСния.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ гСнСрирования ΠΆΡƒΡ€Π½Π°Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ сообщСния ΠΏΠΎ катСгориям (scope). Π’ΠΎΠ³Π΄Π° ваши ΠΆΡƒΡ€Π½Π°Π»Ρ‹ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Π΅Π΅. ΠŸΡ€Π΅ΠΊΡ€Π°ΡΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: соглашСния ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ… ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΆΡƒΡ€Π½Π°Π»ΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² AngularJS.

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠΉΡ‚Π΅ стандарты оформлСния ΠΊΠΎΠ΄Π° ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€Π΅ΠΊΠΎΠΌΠΌΠΈΡ‚-Ρ…ΡƒΠΊΠΈ


Для написания ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π² сопровоТдСнии ΠΊΠΎΠ΄Π° ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ стандарты оформлСния ΠΈ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΠΈΡ… Π² ΠΏΡ€Π΅ΠΊΠΎΠΌΠΌΠΈΡ‚-Ρ…ΡƒΠΊΠ°Ρ… (pre-commits hooks). Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π²Π½Π΅ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΡ‚ΠΎ Π΅Π³ΠΎ ΠΏΠΈΡˆΠ΅Ρ‚, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, написанный ΠΊΠ΅ΠΌ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ.

Π― Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Prettier ΠΈ StandardJS, Π½ΠΎ это Π΄Π΅Π»ΠΎ вкуса, сущСствуСт мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ; ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ своё. Π“Π»Π°Π²Π½ΠΎΠ΅, слСдуйтС Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ стандартам оформлСния ΠΊΠΎΠ΄Π°, это ΠΏΠΎΠΉΠ΄Ρ‘Ρ‚ Π½Π° ΠΏΠΎΠ»ΡŒΠ·Ρƒ.

typicode/husky β€” прСкрасный инструмСнт для конфигурирования ΠΏΡ€Π΅ΠΊΠΎΠΌΠΌΠΈΡ‚-Ρ…ΡƒΠΊΠΎΠ².

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ тСсты ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ pull request’ΠΎΠ²


ΠžΡ‡Π΅Π½ΡŒ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ тСсты ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ бСзопасности ΠΈ стиля оформлСния ΠΊΠΎΠ΄Π° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ pull request’Π΅. Вряд Π»ΠΈ Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ всё это Π΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. МоТно быстро ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСрвСр Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ, Π²Ρ€ΠΎΠ΄Π΅ TravisCI, Ρ‡Ρ‚ΠΎΠ±Ρ‹ автоматичСски ΠΏΡ€ΠΎΠ³ΠΎΠ½ΡΡ‚ΡŒ Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Ρ‡Π΅Ρ€Π΅Π· тСсты послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ pull request’Π°. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Github, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π½Π΅ позволял Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ pull request’Ρ‹, Ссли Ρ‚Π΅ Π½Π΅ ΠΏΡ€ΠΎΡˆΠ»ΠΈ тСсты. ΠŸΡ€ΠΈ сбоС тСстов Github ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Π°Π²Ρ‚ΠΎΡ€Ρƒ сообщСниС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ исправил свои pull request’Ρ‹.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Π—Π°Ρ‰ΠΈΡ‰Π°ΠΉΡ‚Π΅ свою мастСр-Π²Π΅Ρ‚ΠΊΡƒ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅Π²ΠΈΠ·ΠΈΡŽ ΠΊΠΎΠ΄Π°


Github позволяСт Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ мастСр-Π²Π΅Ρ‚ΠΊΡƒ ΠΎΡ‚ прямых ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… push’Сй ΠΈ пСрСбазирования. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΡˆΡŒ с ΠΊΠ΅ΠΌ-Ρ‚ΠΎ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅Π²ΠΈΠ·ΠΈΡŽ ΠΊΠΎΠ΄Π°, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Π΅Π³ΠΎ с мастСр-Π²Π΅Ρ‚ΠΊΠΎΠΉ. Π­Ρ‚ΠΎ задаётся Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ настроСк ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ рСпозитория.

Π—Π°Ρ‰ΠΈΡ‚ΠΈΠ² мастСр-Π²Π΅Ρ‚ΠΊΡƒ ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ² ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ€Π΅Π²ΠΈΠ·ΠΈΡŽ, Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ вряд Π»ΠΈ ΠΏΠΎΠΏΠ°Π΄Ρ‘Ρ‚ Π² мастСр ΠΈ Ρ‡Ρ‚ΠΎ Π½ΠΈΠΊΡ‚ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π½Π΅ подставит ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ…, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² Git-ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ мастСр-Π²Π΅Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΏΡƒΡˆΠΈΠ² Π½Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄.

Π‘ΠΊΠ²ΠΎΡˆΡŒΡ‚Π΅ свои pull request’Ρ‹


Много споров ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ: ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ, ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ΡŒ (squash) ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π― ΡΡ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ всСго ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ:
  • НС всС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π½Π°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ pull request ΠΏΠΎΠ²Π΅Ρ€Ρ… мастСр-Π²Π΅Ρ‚ΠΊΠΈ. МногиС просто ΠΌΡ‘Ρ€ΠΆΠ°Ρ‚ мастСр ΠΏΠΎΠ²Π΅Ρ€Ρ… своих ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Бквошинг позволяСт ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ merge-сообщСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ бСсполСзны для Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ формирования ΠΆΡƒΡ€Π½Π°Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ просто Π·Π°ΡˆΡƒΠΌΠ»ΡΡŽΡ‚ Git-Π»ΠΎΠ³.
  • НС всС участники ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π±ΡƒΠ΄ΡƒΡ‚ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ рСкомСндациям ΠΏΠΎ внСсСнию ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Π° сквошинг позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСниями, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΌΠΈ Π² мастСр-Π²Π΅Ρ‚ΠΊΡƒ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π²Ρ‹ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс Π½Π° основС сквошинга, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ всС pull request’Ρ‹ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ Ρ„ΠΈΡ‡Π°ΠΌ, исправлСниям Π±Π°Π³ΠΎΠ² ΠΈΠ»ΠΈ Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹ΠΌ Π·Π°Π΄Π°Ρ‡Π°ΠΌ.

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

Учитывая шаблон MAJOR.MINOR.PATCH, ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΠΉΡ‚Π΅:

  • Π‘Ρ‚Π°Ρ€ΡˆΡƒΡŽ (MAJOR) Π²Π΅Ρ€ΡΠΈΡŽ, Ссли вноситС нСсовмСстимыС с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ вСрсиями измСнСния Π² API.
  • ΠœΠ»Π°Π΄ΡˆΡƒΡŽ (MINOR) Π²Π΅Ρ€ΡΠΈΡŽ, Ссли добавляСтС ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.
  • ΠŸΠ°Ρ‚Ρ‡-Π²Π΅Ρ€ΡΠΈΡŽ (PATCH), Ссли вноситС ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ совмСстимыС исправлСния ошибок.

Π’ качСствС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ шаблона MAJOR.MINOR.PATCH ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΊΠΈ для ΠΏΡ€Π΅Ρ€Π΅Π»ΠΈΠ·ΠΎΠ² ΠΈ сборок.

Помимо измСнСния вСрсии package.json, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ вСрсии Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ git-Ρ‚Π΅Π³.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

БпСцификация Conventional Commits ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈ написании ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСний соблюдСниС простого стандартизированного соглашСния. Оно увязано с соглашСниСм SemVer, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ просит Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚-сообщСниях всС Ρ„ΠΈΡ‡ΠΈ, исправлСния ΠΈ критичСскиС измСнСния. Боблюдая соглашСниС, ΠΌΡ‹ создаём стандартный язык, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

ΠΠ²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот процСсс ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ TravisCI.

Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° эти ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹: dominique-mueller/automatic-release, semantic-release/semantic-release.

АвтоматизируйтС Ρ€Π°Π·Π²Ρ‘Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Π³-Ρ…ΡƒΠΊΠΎΠ²


НС ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΠΈ Ρ€Π΅Π»ΠΈΠ·ΠΎΠ², ΠΊΠ°ΠΊ это прСдлагаСтся Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Git Flow. МоТно Π±Ρ€Π°Ρ‚ΡŒ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚Ρ‹ развёртывания ΠΈΠ· Git-Ρ‚Π΅Π³ΠΎΠ². Π—Π΄Π΅ΡΡŒ описано, ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ TravisCI Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Git-Ρ‚Π΅Π³ΠΈ Π² heroku. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ просто, Π½ΡƒΠΆΠ½ΠΎ лишь для Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Ρ‚Π΅Π³ΠΎΠ² Π·Π°Π΄Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ любого Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ CI-сСрвСра.

Для срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ…ΡƒΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π·Π²Ρ‘Ρ€Ρ‚Ρ‹Π²Π°Π΅Ρ‚ послСдний мастСр-ΠΊΠΎΠΌΠΌΠΈΡ‚. А для срСд ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ΠΎΠ² (feature environments) ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π½Π΅ Ρ‚Π°ΠΊΠΈΠ΅ Π΄ΠΎΠ»Π³ΠΎΠΆΠΈΠ²ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π΅Ρ‚ΠΊΠΈ; ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ PR-запроса Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚Π΅ΡΡ‚ΠΎΠ²ΡƒΡŽ срСду, Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ слоТнСС, Π΄Π° ΠΈ Π½Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

НастройтС ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΉ Github-ΠΊΠ°Π½Π°Π» для Ρ‡Π°Ρ‚Π°


ΠžΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ способ отслСТивания активности Π² Π²Π°ΡˆΠΈΡ… Github-рСпозиториях ΠΈΠ· мСста, идСально подходящСго для взаимодСйствия с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ: простой ΠΏΠΎΡ‚ΠΎΠΊ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‡Π°Ρ‚Π°Ρ…. К слову, Π² Ρ‡Π°Ρ‚Π°Ρ… Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅, Π² 2013-ΠΌ Π½Π° Github появился Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ChatOps, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π½Ρ‘ΠΌ рассказываСтся здСсь.

АвтоматизируйтС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ зависимостСй


Нам приходится рСгулярно Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ зависимостСй. Π­Ρ‚ΠΎ идСальная Π·Π°Π΄Π°Ρ‡Π° для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. БущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ инструмСнтов, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ зависимости «свСТими», автоматичСски создавая Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ pull request’Ρ‹ с послСдними вСрсиями. Π­Ρ‚ΠΈ запросы Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠ³Π½Π°Π½Ρ‹ Ρ‡Π΅Ρ€Π΅Π· Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ нСрСгрСссионныС тСсты, ΠΈ Ссли ΠΏΡ€ΠΎΠΉΠ΄ΡƒΡ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π΄Π΅ΡΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ послС объСдинСния Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ остороТны с измСнСниями уровня ΡΡ‚Π°Ρ€ΡˆΠΈΡ… вСрсий, Π΄Π²Π°ΠΆΠ΄Ρ‹ всё провСряйтС.

ΠŸΠ°Ρ€Π° ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… инструмСнтов: greenkeeper.io ΠΈ david-dm.org.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΠΉΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ с интСрфСйсом Github’а


Open source-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ создали ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ с интСрфСйсом Github’а. НапримСр:
  • GitHub Avatars [chrome]β€Šβ€”β€ŠΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π°Π²Π°Ρ‚Π°Ρ€Ρ‹ Π² новостной Π»Π΅Π½Ρ‚Π΅.
  • GitHub Awesome Autocomplete [chrome] [firefox]β€Šβ€”β€ŠΠ΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠ³ΠΎ поиска Π² поисковый Π±Π»ΠΎΠΊ GitHub.
  • GitHub Categoric [chrome]β€Šβ€”β€ŠΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ваши ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Π΅ GitHub-увСдомлСния.
  • GitHub Hovercard [chrome] [firefox]β€Šβ€”β€ŠΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ GitHub-ΠΏΠ»Π°Π³ΠΈΠ½ hovercard для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ/рСпозитория/Π·Π°Π΄Π°Ρ‡.
  • GitHub Isometric Contributions [chrome] [safari]β€Šβ€”β€ŠΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Ρ€Π°Π·Π½Ρ‹Ρ… людСй Π² Π²ΠΈΠ΄Π΅ изомСтричСского pixel art-Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.
  • GitHub Linker [chrome]β€Šβ€”β€ŠΠ»ΠΈΠ½ΠΊΡƒΠ΅Ρ‚ зависимости Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ ΠΈΠ»ΠΈ bower-Ρ„Π°ΠΉΠ»Π΅ с ΠΈΡ… GitHub-страницами.
  • GitHub Octotree [chrome] [safari] [firefox] [opera]β€Šβ€”β€ŠΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ GitHub-ΠΊΠΎΠ΄ Π² Π²ΠΈΠ΄Π΅ Π΄Π΅Ρ€Π΅Π²Π°.
  • GitHub Selfies [chrome]β€Šβ€”β€ŠΠ΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ‚ сСлфи Π² pull request’Ρ‹ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.
  • GitHub Stars Tagger [chrome]β€Šβ€”β€ŠΠΏΡ€ΡΠΌΠΎ Π² GitHub добавляСт Ρ‚Π΅Π³ΠΈ Π² ваши ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ Π·Π²Ρ‘Π·Π΄Π°ΠΌΠΈ (starred) Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.
  • Github NPM Hub [chrome]β€Šβ€”β€ŠΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ npm-зависимости Π² GitHub-рСпозиториях.
  • Github vscode-icons [chrome] β€” ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ vscode-ΠΈΠΊΠΎΠ½ΠΊΠΈ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ рСпозитория.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ: GitHub Browser Extensions.

На Kikobeats/awesome-Github Π΅ΡΡ‚ΡŒ Π΅Ρ‰Ρ‘ инструмСнты для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ вашСго Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ процСсса.

ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Π°Ρ ΡƒΡ‡Ρ‘Π±Π° ΠΈ ΡΠ°ΠΌΠΎΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΠ΅


Github ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ open source ПО постоянно Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‚ΡΡ, поэтому Π΄Π΅Ρ€ΠΆΠΈΡ‚Π΅ Ρ€ΡƒΠΊΡƒ Π½Π° ΠΏΡƒΠ»ΡŒΡΠ΅ Π½ΠΎΠ²Π΅ΠΉΡˆΠΈΡ… Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΉ ΠΈ инструмСнтов, отслСТивая Github-новости ΠΈ соблюдая стандарты вашСго сообщСства. ΠŸΡ€Π΅ΠΊΡ€Π°ΡΠ½Ρ‹ΠΉ источник ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ β€” Youtube-ΠΊΠ°Π½Π°Π» GitHub Training & Guides.

habr.com