πŸ˜ΊπŸ™πŸ§Ό Π‘Π°ΠΌ сСбС GitHub: ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с чистым Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ

Git – мощная систСма контроля вСрсий, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ€ΠΎΠ΄Π΅ GitHub ΠΈ GitLab. Однако Git сам ΠΏΠΎ сСбС Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Π΅Π±-интСрфСйсов ΠΈ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… сСрвисов. МногиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с чистым Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹ΠΌ Π½Π° собствСнном сСрвСрС. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΏΠΎΡ‡Π΅ΠΌΡƒ это ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΈ ΠΊΠ°ΠΊ эффСктивно ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°Ρ‚Ρ‡ΠΈ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ этот ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.

ΠŸΡ€ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ использовалась публикация Β«Git without a forgeΒ».

Git стал стандартом для контроля вСрсий, ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этой систСмой Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Π²Ρ€ΠΎΠ΄Π΅ GitHub ΠΈ GitLab. Однако использованиС чистого Git Π±Π΅Π· привязки ΠΊ этим сСрвисам Π΄Π°Π΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ прСимущСства:

  • ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ. Когда ΠΊΠΎΠ΄ хранится Π½Π° сторонних ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, Π²Ρ‹ зависитС ΠΎΡ‚ ΠΈΡ… ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ, Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ…. Π‘ чистым Git Π²Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ свои ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹: Π³Π΄Π΅ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ хранятся, ΠΊΡ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊ Π½ΠΈΠΌ доступ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ инструмСнты ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.
  • ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° настройки ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ зависимости. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‚ΠΈΠΏΠ° GitHub ΡƒΠ΄ΠΎΠ±Π½Ρ‹, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… сСрвисов (Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π²Π΅Π±-интСрфСйсов ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ). Чистый Git Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π»Π΅Π³Ρ‡Π΅ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΈ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ.
  • Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ Π² ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ исправлСний. На GitHub Π΅ΡΡ‚ΡŒ СдинствСнный стандартный способ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠΎΠ΄Π° – Ρ‡Π΅Ρ€Π΅Π· запрос Π½Π° вытягиваниС. Π’ чистом Git ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ измСнСния нСсколькими ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ способами, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π±Π΅Π· рСгистрации Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Π±Π΅Π· 2FA-Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π±Π΅Π· сбора Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‚.ΠΏ.
  • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ. Π“ΠΎΡ€Π°Π·Π΄ΠΎ Ρ€Π°Π·ΡƒΠΌΠ½Π΅Π΅ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Π΅ Π±Π°Π·Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° собствСнном Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ сСрвСрС.

Код ΠΈΠ· чистого Git-рСпозитория ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ git clone, Π° для просмотра Π±Π΅Π· клонирования ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Π±-интСрфСйс gitweb. Π§ΡƒΡ‚ΡŒ слоТнСС Π΄Π΅Π»ΠΎ обстоит с ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ исправлСний (Π½Π° GitHub это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ Create pull request). Π­Ρ‚ΠΎ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ ставит Π² Ρ‚ΡƒΠΏΠΈΠΊ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ внСсти свой Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, находящийся Π² чистом Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. НиТС ΠΌΡ‹ рассмотрим Ρ‚Ρ€ΠΈ основных способов ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠΎΠ΄Π° Π² чистый Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Как ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² чистый Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Как ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² чистый Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

1. Π›ΡƒΡ‡ΡˆΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ – ссылка Π½Π° ваш Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π° любом сСрвисС ΠΈΠ»ΠΈ Π»ΠΈΡ‡Π½ΠΎΠΌ сайтС.

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π²Π΅Ρ‚ΠΊΡƒ с исправлСниями ΠΈ ΠΏΡ€ΠΈΡˆΠ»ΠΈΡ‚Π΅ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ссылку:

git clone https://your.repo.url

Π­Ρ‚ΠΎΡ‚ способ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² чистых Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½:

  • НС Π·Π°Π³Ρ€ΠΎΠΌΠΎΠΆΠ΄Π°Π΅Ρ‚ ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΏΠ°Ρ‚Ρ‡Π°ΠΌΠΈ.
  • Автор ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ просто Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ git fetch ΠΈ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ измСнСния.
  • ОбновлСниС ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ происходит ΠΏΡ€ΠΎΡ‰Π΅ – Ссли Π²Π»Π°Π΄Π΅Π»Π΅Ρ† оставил ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΊΠΎΠ΄Ρƒ, Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ снова ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„Π°ΠΉΠ»ΠΎΠ². Достаточно ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ Π² вашСм Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ письмо.

URL ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ, Π³Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² git clone ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π²Π΅Π» Π½Π° Π²Π΅Π±-страницу, Π³Π΄Π΅ Π΅ΡΡ‚ΡŒ ссылка, пригодная для git clone. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ страница Π½Π° git-хостингС (GitHub ΠΈ Ρ‚.ΠΏ.), Π»ΠΈΠ±ΠΎ просто статичСский сайт, ΠΊΡƒΠ΄Π° Π²Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ»ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ запустили git update-server-info.

По сути, это Ρ‚ΠΎΡ‚ ΠΆΠ΅ самый процСсс, Ρ‡Ρ‚ΠΎ ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ запрос Π½Π° вытягиваниС (ΠΈΠ»ΠΈ запрос Π½Π° слияниС) Π² систСмах управлСния рСпозиториями. ИмСнно поэтому Ρ‚Π°ΠΌ сначала Π½ΡƒΠΆΠ½ΠΎ Ρ„ΠΎΡ€ΠΊΠ½ΡƒΡ‚ΡŒ (ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ) Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, внСсти измСнСния Π² Π²Π΅Ρ‚ΠΊΡƒ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ PR. Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° Create pull request Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚ΠΎ ΠΆΠ΅ самоС, Π½ΠΎ ΠΈΠΌΠ΅ΠΉΠ» с этой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Π½ΠΈΡ‡Π΅ΠΌ Π½Π΅ Ρ…ΡƒΠΆΠ΅.

2. ИспользованиС git bundle.

Git bundle – это нСдостаточно извСстная, Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ полСзная функция Git, которая позволяСт ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈΠ»ΠΈ Π΅Π³ΠΎ Ρ‡Π°ΡΡ‚ΡŒ Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ». Π­Ρ‚Π° функция Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΠ°, Ссли Ρƒ вас Π½Π΅Ρ‚ возмоТности Π²Ρ‹Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ доступ. Π‘Π°Π½Π΄Π»Ρ‹ (Π°Ρ€Ρ…ΠΈΠ²Ρ‹) Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΌΠΈ ΠΈ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ.

ΠŸΠΎΠ»Π½Ρ‹ΠΉ Π±Π°Π½Π΄Π» – это вСсь Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ». Он содСрТит:

  • ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Git-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².
  • Набор ссылок – ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ это Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ (HEAD) Π²Π΅Ρ‚ΠΎΠΊ.

Π‘ Ρ‚Π°ΠΊΠΈΠΌ Π±Π°Π½Π΄Π»ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ git fetch ΠΈΠ»ΠΈ git pull, ΡƒΠΊΠ°Π·Π°Π² имя Ρ„Π°ΠΉΠ»Π°.
  • ΠΠ°Ρ‡Π°Ρ‚ΡŒ с git ls-remote, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π²Π΅Ρ‚ΠΊΠΈ содСрТатся Π² Π±Π°Π½Π΄Π»Π΅.

ЕдинствСнноС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ – Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ сам Π±Π°Π½Π΄Π»

Π˜Π½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ Π±Π°Π½Π΄Π» содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², прСдполагая, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Π­Ρ‚ΠΎ идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ.

git bundle create fix-weasel-rotator.bundle origin/main..HEAD

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» fix-weasel-rotator.bundle ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎ ΠΏΠΎΡ‡Ρ‚Π΅ ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· мСссСндТСр.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°:

  • Один Ρ„Π°ΠΉΠ» нСзависимо ΠΎΡ‚ количСства ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ.
  • ΠšΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ – Π±Π°Π½Π΄Π»Ρ‹ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшС тСкстовых Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚ΠΎ ΠΆΠ΅ сТатиС, Ρ‡Ρ‚ΠΎ ΠΈ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Git).
  • Π‘ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ΠΎΡ‚ искаТСний ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅ (ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ Π½Π΅ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ Β«ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒΒ» Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ).
  • ΠŸΠΎΠ»Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ… – ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ связи, Ρ‡Ρ‚ΠΎ позволяСт Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π±Π΅ΠΉΠ·.
  • ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² – Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ git rebase вмСсто git am.

3. ВСкстовыС ΠΏΠ°Ρ‚Ρ‡ΠΈ (git format-patch).

Команда git format-patch создаeΡ‚ Π½Π°Π±ΠΎΡ€ тСкстовых Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΏΠ°Ρ‚Ρ‡Π°ΠΌΠΈ, ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Π­Ρ‚ΠΈ ΠΏΠ°Ρ‚Ρ‡ΠΈ автоматичСски ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΈΠΌΠ΅Π½Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ 0001-*, 0002-* ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, Ρ‡Ρ‚ΠΎ позволяСт Π»Π΅Π³ΠΊΠΎ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… порядок примСнСния:

git format-patch origin/main

Π­Ρ‚ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€Ρƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΊΠ°ΠΊ влоТСния ΠΊ ΠΏΠΈΡΡŒΠΌΡƒ (ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ влоТСния Π² Π²ΠΈΠ΄Π΅ тСкстового ΠΈΠ»ΠΈ zip-Ρ„Π°ΠΉΠ»Π°, Π° Π½Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π° Π² Ρ‚Π΅Π»Π΅ письма, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ email-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΡ€Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ). По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π±Π°Π½Π΄Π»Π°ΠΌΠΈ этот ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько нСдостатков:

1. Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ управлСния нСсколькими Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ.

  • ΠŸΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ письма с ΠΏΡΡ‚ΡŒΡŽ ΠΏΠ°Ρ‚Ρ‡Π°ΠΌΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡΡ‚ΡŒΡŽ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ.
  • ИмСна Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ ΠΈ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹.

2. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ тСкстового Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°.

ВСкстовыС Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ Π²ΠΎ врСмя ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, ΠΈ это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ.

3. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ².

  • Команда git am, которая примСняСт эти ΠΏΠ°Ρ‚Ρ‡ΠΈ, Π½Π΅ всСгда эффСктивно справляСтся с ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°ΠΌΠΈ.
  • ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠ°Ρ‚Ρ‡ΠΈ Π½Π΅ содСрТат ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅, Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ возникновСния ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π²Ρ‹ΡˆΠ΅.
Из-Π·Π° большого количСства ΠΊΠΎΠΌΠ°Π½Π΄ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ Π±Ρ‹Π²Π°Π΅Ρ‚ слоТно ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Git. Π’ этом руководствС ΠΌΡ‹ расскаТСм ΠΎΠ±ΠΎ всСм, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с Git, начиная с создания ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ рСпозитория ΠΈ заканчивая слияниСм Π²Π΅Ρ‚ΠΎΠΊ. Помимо Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Git рассмотрим ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Π°ΠΊΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠ°ΠΊ add, checkout, reset, commit, merge, rebase, cherry-pick, pull, push ΠΈ tag.

Как Π½Π΅ Π½Π°Π΄ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°Ρ‚Ρ‡ΠΈ

Как Π½Π΅ Π½Π°Π΄ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°Ρ‚Ρ‡ΠΈ

Π­Ρ‚ΠΈ способы Π½Π΅ подходят Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ Π²Π»Π°Π΄Π΅Ρ†Π΅Π² чистых Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²:

  • НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ git send-email, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это услоТняСт ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ – ΠΎΠ½ΠΈ приходят Π²Ρ€Π°Π·Π½ΠΎΠ±ΠΎΠΉ, ΠΈ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρƒ придСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹.
  • git diff вмСсто ΠΏΠ°Ρ‚Ρ‡Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² diff Π½Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ…, Π°Π²Ρ‚ΠΎΡ€Π°Ρ… ΠΈ коммСнтариях. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρƒ придСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΠΈΡΠ°Ρ‚ΡŒ сообщСния ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², Π° для этого Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈΠ±ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΡΡƒΡ‚ΡŒ исправлСния, Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСкст ΠΈΠ· ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅ΠΉΠ»Π°.
πŸ’» Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста
Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π½Π° нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста»

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

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

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

Освоив эти ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π²Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚Π΅ свои возмоТности ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, Π½ΠΎ ΠΈ смоТСтС ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ спСктрС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Π² сторонС ΠΎΡ‚ популярных ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ.







Π›Π£Π§Π¨Π˜Π• БВАВЬИ ПО Π’Π•ΠœΠ•

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста
18 октября 2017

Π¨ΠΏΠ°Ρ€Π³Π°Π»ΠΊΠ° ΠΏΠΎ Git, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ прСдставлСны основныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

Git сСгодня - это ΠΎΡ‡Π΅Π½ΡŒ популярная систСма контроля вСрсий. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΡˆΠΏΠ°Ρ€Π³Π°Π»...
admin
23 фСвраля 2017

Git Π·Π° полчаса: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π’ послСдниС Π³ΠΎΠ΄Ρ‹ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ git дСмонстрируСт Π²Π·Ρ€Ρ‹Π²Π½ΠΎΠΉ рост. Π­Ρ‚Π° систСма ...
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста
22 дСкабря 2016

6 open-source ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² для ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°

ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π² open-source ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈ составлСнии ΠΏΠΎΡ€Ρ‚Ρ„ΠΎΠ»ΠΈΠΎ для Ρ‚Ρ€ΡƒΠ΄ΠΎ...