Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΡƒΠ»-рСквСсты ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Π½ΡƒΠΆΠ½Ρ‹?

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ Β«What’s the Point of Pull Requests Anyway?Β»

Если Π²Ρ‹ Π΅Ρ‰Π΅ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² ΠΌΠΈΡ€Π΅ Git ΠΈ тСсно связанных с Π½ΠΈΠΌ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, GitHub ΠΈΠ»ΠΈ GitLab), Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΈ Π½Π΅ ΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΡ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ², ΠΊΠ°ΠΊ ΠΏΡƒΠ»-рСквСст (pull request) ΠΈΠ»ΠΈ ΠΌΠ΅Ρ€ΠΆ-рСквСст (merge request). И Π΄Π°ΠΆΠ΅ Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π΅ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ эти Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ ΠΈ Π·Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ эти самыС «рСквСсты».

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ я Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Β«ΠΏΡƒΠ»-рСквСст», Π½ΠΎ ΠΏΠΎ сути это Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ€ΠΆ-рСквСст, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послСдний ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π° GitLab.

ΠŸΡƒΠ»-рСквСсты ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΈΡ…. Π§Ρ‚ΠΎΠ±Ρ‹ Π²Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² саму идСю, придСтся Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°ΠΏΡ€ΡΡ‡ΡŒΡΡ, Π½ΠΎ я ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»ΠΎ Ρ‚ΠΎΠ³ΠΎ стоит. Моя Ρ†Π΅Π»ΡŒ β€” ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΡƒΠ»-рСквСстами ΠΈ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ мСсто ΠΎΠ½ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΡƒΠ»-рСквСст?

ΠŸΡƒΠ»-рСквСст это запрос (Π°Π½Π³Π». request β€” «запрос») Π½Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Π² Π²Π΅Ρ‚ΠΊΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ всСго ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Ρ€Π°Π·Π½Ρ‹Ρ… Π°Π²Ρ‚ΠΎΡ€ΠΎΠ². Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΏΡƒΠ»-рСквСст ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° ΠΈΠ»ΠΈ для исправлСния Π±Π°Π³Π° Π² основной Π²Π΅Ρ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ΠŸΡƒΠ»-рСквСст Ρ‚Π°ΠΊΠΆΠ΅ содСрТит ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ описаниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ эти измСнСния вносятся. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡƒΠ»-рСквСста ΠΈ Ρ€Π΅Π²ΡŒΡŽΠ΅Ρ€Π°ΠΌΠΈ происходит обсуТдСниС этих ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Π Π΅Π²ΡŒΡŽΠ΅Ρ€Ρ‹ β€” это Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π½Π°Π΄ этим ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ способныС Π΄Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь ΠΏΠΎ вносимым измСнСниям. Π’ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ Π² Ρ€ΠΎΠ»ΠΈ Ρ€Π΅Π²ΡŒΡŽΠ΅Ρ€ΠΎΠ² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΎΡ€Ρ‹ ΠΈΠ»ΠΈ ΠΌΠ΅ΠΉΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹. Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… случаях (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² вашСй ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅) Ρ€Π΅Π²ΡŒΡŽΠ΅Ρ€Π°ΠΌΠΈ Π±Ρ‹Π²Π°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ (Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ-ΡΠ΅Π½ΡŒΠΎΡ€Ρ‹).

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ выглядит ΠΏΡƒΠ»-рСквСст с простым описаниСм ΠΈ ссылкой Π½Π° issue (ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ) Π½Π° GitHub:

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

ΠšΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΡ

По сути ΠΏΡƒΠ»-рСквСсты ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ процСсс совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ людьми. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΠΉ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ Π°Π²Ρ‚ΠΎΡ€Π°ΠΌΠΈ ΠΈ Ρ€Π΅Π²ΡŒΡŽΠ΅Ρ€Π°ΠΌΠΈ ΠΏΡƒΡ‚Π΅ΠΌ ΠΏΠΎΠΊΠ°Π·Π° Π΄ΠΈΡ„Ρ„-ΠΎΠ² (diffs), ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² (commits) ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², ΠΏΠΎΡΡΠ½ΡΡŽΡ‰ΠΈΡ… измСнСния.

Π”ΠΎ ΠΏΡƒΠ»-рСквСстов измСнСния ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π»ΠΈΡΡŒ ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅ ΠΈΠ»ΠΈ Π² IRC-ΠΊΠ°Π½Π°Π»Π°Ρ…. Π’Π°ΠΌ писали Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π²Π΅Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΌΠ΅Ρ€ΠΆΠΈΡ‚ΡŒ (ΡΠ»ΠΈΡ‚ΡŒ) измСнСния, ΠΌΠ΅ΠΉΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ измСнСния с Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ вСрсиСй ΠΊΠΎΠ΄Π° Π½Π° собствСнном ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Π΄Π°Ρ‚ΡŒ фидбэк, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π° с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ измСнСниями. БогласованныС измСнСния ΠΌΠ΅Ρ€ΠΆΠΈΠ» Π½Π° своСй локальной машинС, Π° Π·Π°Ρ‚Π΅ΠΌ отправлял ΠΈΡ… Π² ΠΎΠ±Ρ‰ΡƒΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ. ΠŸΡƒΠ»-рСквСсты сущСствСнно ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ вСсь этот процСсс.

ОсобСнно это касаСтся ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ тысячи ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΎΡ€ΠΎΠ². ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΏΡƒΠ»-рСквСстов. Часто ΠΎΠ½ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«GitHub flowΒ». GitHub flow ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΊΠΈ Ρ†Π΅Π»Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ созданиС ΠΏΡƒΠ»-рСквСстов Π² этих Ρ„ΠΎΡ€ΠΊΠ°Ρ….

ΠŸΠΎΠ½Π°Ρ‡Π°Π»Ρƒ всС это каТСтся ΡΡ‚Ρ€Π°ΡˆΠ½Ρ‹ΠΌ ΠΈ нСпонятным, Π½ΠΎ Π½Π΅ Π²ΠΎΠ»Π½ΡƒΠΉΡ‚Π΅ΡΡŒ! ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ основная идСя остаСтся ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΉ: Π²Ρ‹ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° пСрСнос ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ.

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ прСимущСство ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΏΡƒΠ»-рСквСстов Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всСм сотрудникам Π²ΠΈΠ΄Π½Π° вся коммуникация ΠΏΠΎ измСнСниям. К вашим услугам поиск ΠΏΠΎ внСсСнным измСнСниям ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅Π³ΠΈ. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ происходящСС ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ. ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π΅ Ρ‚Π΅Ρ€ΡΡŽΡ‚ΡΡ Π³Π΄Π΅-Ρ‚ΠΎ Π² ΠΏΠΎΡ‚ΠΎΠΊΠ°Ρ… элСктронных писСм ΠΈΠ»ΠΈ ΠΎΠΊΠ½Π°Ρ… Ρ‡Π°Ρ‚ΠΎΠ². Π›ΡŽΠ±ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, ΠΌΠΎΠΆΠ΅Ρ‚ Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ свСдСния.

Автоматизация

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡƒΠ»-рСквСсты ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Π»ΠΈ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π² сообщСствС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², GitHub ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ создали ΠΎΠ±ΡˆΠΈΡ€Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π²Π΅Π±Ρ…ΡƒΠΊΠΎΠ² (webhooks), спроСктированных Π½Π° основС GitHub flow. Π­Ρ‚ΠΈ Π²Π΅Π±Ρ…ΡƒΠΊΠΈ Π΄Π΅Π»Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’ наши Π΄Π½ΠΈ распространСна ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, ΠΊΠΎΠ³Π΄Π° Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅, ΠΈ поэтому ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΡƒΠ»-рСквСста. По своСму ΠΎΠΏΡ‹Ρ‚Ρƒ ΠΌΠΎΠ³Ρƒ ΡΡƒΠ΄ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это ΠΎΠ΄Π½ΠΎ ΠΈΠ· самых подходящих мСст для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ запускС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСстов. Из ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡƒΠ»-рСквСстС ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹Π΅ окруТСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π³Π»Π°Π΄ΠΊΠΎ Π»ΠΈ всС ΠΏΡ€ΠΎΡˆΠ»ΠΎ.

РаньшС ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ инструмСнты ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π±Ρ‹Π»ΠΈ Π΄ΠΎΡ€ΠΎΠ³ΠΈΠΌΠΈ. КомандС ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ инфраструктуру для Π·Π°Π΄Π°Ρ‡ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π»ΠΈΠ±ΠΎ ΠΏΠ»Π°Ρ‚ΠΈΡ‚ΡŒ Π·Π° сСрвисы. Π’ послСднСС врСмя всС большС инструмСнтов становятся доступными, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, настройка Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ облСгчаСтся. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ бСсплатными прСдлоТСниями Ρ‚Π°ΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ ΠΊΠ°ΠΊ Netlify ΠΈ Travis.

GitHub пошСл Π΄Π°ΠΆΠ΅ Π΅Ρ‰Π΅ дальшС ΠΈ выпустил GitHub Actions. Actions ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ процСссы Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ· Π½Π°Π±ΠΎΡ€Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹Ρ… для ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ. НСпрСмСнно ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅!

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ статуса

ПослСднСС большоС прСимущСство ΠΏΡƒΠ»-рСквСстов это концСпция ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ статуса (status checks). ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ статуса это просто Π½Π°Π±ΠΎΡ€ Π·Π°Π΄Π°Ρ‡, выполняСмых для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π² ΠΏΡƒΠ»-рСквСстС, ΠΈ Π²Ρ‹Π΄Π°ΡŽΡ‰ΠΈΡ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ «успСх» (success) ΠΈΠ»ΠΈ Β«ΠΏΡ€ΠΎΠ²Π°Π»Β» (failure). Π­Ρ‚ΠΎ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Ρ‡Π΅ΠΊ-листы для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ, Π³ΠΎΡ‚ΠΎΠ²Ρ‹ Π»ΠΈ измСнСния ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ Π² ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ.

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

Π‘Ρ‚ΠΎΠΈΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ‚Π΅ΠΌΠ΅ ΠΊΠΎΠ΄-Ρ€Π΅Π²ΡŒΡŽ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡƒΠ»-рСквСсты сильно ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‚ возмоТности ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ сотрудничСства, СстСствСнно, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ примСнят ΠΈΡ… Π² ΠΊΠΎΠ΄-Ρ€Π΅Π²ΡŒΡŽ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ прямо со страницы ΠΏΡƒΠ»-рСквСста ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ‚ Ρ€Π΅Π²ΡŒΡŽΠ΅Ρ€ΠΎΠ², Ρ€Π΅Π²ΡŒΡŽ ΠΈ статуса запросов (ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅Ρ‚). Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… Π΅ΡΡ‚ΡŒ Π΄Π°ΠΆΠ΅ автоматичСская ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° добавлСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ Π³Ρ€ΡƒΠΏΠΏ ΠΊ ΠΏΡƒΠ»-рСквСсту β€” Π² зависимости ΠΎΡ‚ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹. Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, посмотритС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ CODEOWNERS.

Π˜Ρ‚ΠΎΠ³ΠΈ

Если Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ, ΠΏΡƒΠ»-рСквСст это просто запрос Π½Π° Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ. НСсмотря Π½Π° простоту ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, ΠΏΡƒΠ»-рСквСсты ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΡ‰Π½Ρ‹ΠΌ инструмСнтом. ИмСнно поэтому ΠΎΠ½ΠΈ стали Π²Π°ΠΆΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ соврСмСнной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠŸΡƒΠ»-рСквСсты ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΠ΄-Ρ€Π΅Π²ΡŒΡŽ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ статуса, Π° всС вмСстС это позволяСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ качСства ΠΊΠΎΠ΄Π°.

Если Ρ€Π°Π½ΡŒΡˆΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π±Ρ‹Π» просто мСстом, Π³Π΄Π΅ хранится ΠΊΠΎΠ΄, Ρ‚ΠΎ с появлСниСм ΠΏΡƒΠ»-рСквСстов ΠΎΠ½ стал мСстом, Π³Π΄Π΅ хранятся знания ΠΎΠ± этом ΠΊΠΎΠ΄Π΅.

Π’Π°ΠΊΠΆΠ΅ ΠΏΡƒΠ»-рСквСсты ΠΈΠ³Ρ€Π°ΡŽΡ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ€ΠΎΠ»ΡŒ Π² процСссС обучСния. НСкоторыС ΠΈΠ· самых Π²Π°ΠΆΠ½Ρ‹Ρ… ΡƒΡ€ΠΎΠΊΠΎΠ², ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΡ…ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, я ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Π² фидбэках Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈΠ²Ρ‹Ρ… Ρ€Π΅Π²ΡŒΡŽΠ΅Ρ€ΠΎΠ² ΠΌΠΎΠΈΡ… ΠΏΡƒΠ»-рСквСстов.

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

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ занятиС «ΠŸΡ€ΠΎΡ†Π΅ΡΡ Pull request Π½Π° GitHub»

На ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ занятии Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ GitHub для дСсктопа, ΠΌΡ‹ использовали Github Desktop для управлСния Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ процСссом ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², вСтвлСния ΠΈ слияния. На этом занятии ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ дСйствия, Π½ΠΎ с использованиСм Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ интСрфСйса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСт Github, вмСсто использования Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΈΠ»ΠΈ Github Desktop.

ПониманиС процСсса Pull request являСтся Π²Π°ΠΆΠ½Ρ‹ΠΌ для Π°Π½Π°Π»ΠΈΠ·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΎΠΏΠ΅Π½-сорс ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ с нСсколькими участниками. ИспользованиС интСрфСйса GitHub Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ссли Ρ€Π΅Ρ†Π΅Π½Π·Π΅Π½Ρ‚Ρ‹ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ ΠΈΠ»ΠΈ Github Desktop.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² Π½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½Π° Π²Π΅Ρ‚ΠΊΠ° с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«MasterΒ». ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈ внСсСнии ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ просмотра / Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, создаСтся новая Π²Π΅Ρ‚ΠΊΠ° ΠΈ вносятся всС измСнСния Π² Π²Π΅Ρ‚ΠΊΡƒ. Π—Π°Ρ‚Π΅ΠΌ, ΠΏΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ, Π²Π»Π°Π΄Π΅Π»Π΅Ρ† Ρ€Π΅ΠΏΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ измСнСния ΠΈΠ· Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π² Β«MasterΒ» Ρ‡Π΅Ρ€Π΅Π· Β«pull requestΒ».

Для создания ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅:

ΠŸΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ, содСрТимоС ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠΉ (ΠΈΠ»ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ, которая сСйчас просматриваСтся) копируСтся Π² Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° Β«Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΒ» с ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ.

Π Π΅Ρ†Π΅Π½Π·Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π°ΠΊΠΎΠ½Ρ‡Π°Ρ‚ просмотр всСй Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. ВсС измСнСния Π΄Π΅Π»Π°ΡŽΡ‚ΡΡ Π² этой Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅, Π° Π½Π΅ Π² мастСрС.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Pull request

Для создания Pull request:

Когда ΠΌΡ‹ сравниваСм Π²Π΅Ρ‚ΠΊΡƒ с мастСром, ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ список всСх ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ измСнСния Π² Π΄Π²ΡƒΡ… Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… просмотра: Unified ΠΈΠ»ΠΈ Split (это Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ справа ΠΎΡ‚ содСрТимого). Unified ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΊΠΈ вмСстС Π² ΠΎΠ΄Π½ΠΎΠΉ области содСрТимого, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ split ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Π²Π° Ρ„Π°ΠΉΠ»Π° рядом.

Π’Π»Π°Π΄Π΅Π»Π΅Ρ† рСпозитория ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ pull request ΠΈ смоТСт ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΌΠ΅Ρ€Ρ‹ для Π΅Π³ΠΎ объСдинСния.

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

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

Π’Π°ΠΊΠΆΠ΅ стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ссли запрос Π½Π° ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ выполняСтся для Π±ΠΎΠ»Π΅Π΅ старой вСрсии мастСра, Π³Π΄Π΅ исходноС содСрТимоС мастСра большС Π½Π΅ сущСствуСт ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ мСсто, процСсс слияния Π±ΡƒΠ΄Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ Ρ‚Ρ€ΡƒΠ΄Π½Ρ‹ΠΌ для выполнСния.

Π’Π΅Ρ‚ΠΊΠ° sme-review ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ΡΡ с мастСром. Π’Π΅ΠΏΠ΅Ρ€ΡŒ β€œMaster” ΠΈ Π²Π΅Ρ‚ΠΊΠ° sme-review ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ (Π²Π΅Ρ‚ΠΊΠΈ β€œΡΠΌΠ΅Ρ€ΠΆΠ΅Π½Ρ‹β€).

Если ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° список Π²Π΅Ρ‚ΠΎΠΊ, Ρ‚ΠΎ послС удалСния Π²Π΅Ρ‚ΠΊΠ° sme-review большС Π½Π΅ отобраТаСтся.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ участников Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

Иногда Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ соавторов Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Github, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² Π²Π΅Ρ‚ΠΊΡƒ. Если Π΄Ρ€ΡƒΠ³ΠΈΠ΅ участники ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π½Π΅ являясь соавторами, захотят внСсти измСнСния, ΠΎΠ½ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ сообщСниС ΠΎΠ± ошибкС. (Inviting collaborators to a personal repository)

Π§Π΅Π»ΠΎΠ²Π΅ΠΊ Π±Π΅Π· ΠΏΡ€Π°Π² Π½Π° запись, ΠΌΠΎΠΆΠ΅Ρ‚ β€œΡ„ΠΎΡ€ΠΊΠ½ΡƒΡ‚ΡŒβ€ (ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ) Ρ€Π΅ΠΏΠΎ, Π° Π½Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² Π²Π΅Ρ‚ΠΊΡƒ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Однако ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ вСсь Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π° Π½Π΅ создаСт Π²Π΅Ρ‚ΠΊΡƒ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Π€ΠΎΡ€ΠΊ (копия) Π±ΡƒΠ΄Π΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ GitHub. МоТно ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΊΠ½ΡƒΡ‚Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ (это типичная модСль для ΠΎΠΏΠ΅Π½-сорс ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² со ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ внСшними участниками), Π½ΠΎ этот сцСнарий, вСроятно, ΠΌΠ΅Π½Π΅Π΅ распространСн для тСхничСских писатСлСй, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Π² Ρ‚Π΅Ρ… ΠΆΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

Для добавлСния соавторов Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚:

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

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ pull request

Pull Request β€” запрос Π½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. На Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ написанного Π²Π°ΠΌΠΈ ΠΊΠΎΠ΄Π° Π² Ρ‡ΡƒΠΆΠΎΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Π‘ Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ?

А для Π½Π°Ρ‡Π°Π»Π° этот самый Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ Ρ„ΠΎΡ€ΠΊΠ½ΡƒΡ‚ΡŒ (fork β€” Π²ΠΈΠ»ΠΊΠ°, ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅). Π Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ это Π½Π΅Ρ…ΠΈΡ‚Ρ€ΠΎΠ΅ дСйство Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Π΅Π±-сСрвиса для хостинга IT-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ GitHub. РазумССтся, ΠΊΡ€ΠΎΠΌΠ΅ GitHub Π΅ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅: BitBucket, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π’Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠΎ вкусу.

Для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ провСдСния Π½ΠΈΠΆΠ΅ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Ρƒ вас (Ρ‡Ρ‚ΠΎ СстСствСнно) Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ установлСн git

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

Π’ консоли Π² зависимости ΠΎΡ‚ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π°Π±ΠΈΡ€Π°Π΅ΠΌ Π½Π΅Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅:

ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎ. Π£ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Π½ΠΎΡΠΈΡ‚ΡŒ свои измСнСния Π² ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π’ΠΎΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π»Π΅ΠΆΠΈΡ‚ Π½Π° вашСм Тёстком дискС, нСзависим ΠΎΡ‚ основного. Π’ Π½Ρ‘ΠΌ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ваши Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Но ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° измСнСниями, происходящими Π² пСрвоисточникС, ΠΎΡ‚ΠΊΡƒΠ΄Π° Π²Ρ‹ Β« стянули Β» Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ? Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π² отслСТиваСмыС. НапримСр, Ρ‚Π°ΠΊ:

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим ΠΊΠ°ΠΊ ΡΠ»ΠΈΠ²Π°Ρ‚ΡŒ измСнСния ΠΈΠ· ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ рСпозитория ΠΊ сСбС Π² случаС, Ссли Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π² Π½Ρ‘ΠΌ ΡƒΡˆΠ»Π° Π²ΠΏΠ΅Ρ€Ρ‘Π΄ ΠΏΠΎΠΊΠ° Π²Ρ‹ сосрСдоточСнно писали ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹:

Если Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΎΠ³Ρ€ΠΎΠΌΠ΅Π½, Π° Π·Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ Π΅Π³ΠΎ вСсь Π½Π΅ хочСтся, ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ:

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

Π§Π°Ρ‰Π΅ всСго Π²Π΅Ρ‚ΠΊΠΈ (branch β€” ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅, Π²Π΅Ρ‚Π²ΡŒ, Ρ„ΠΈΠ»ΠΈΠ°Π») Π±Ρ‹Π²Π°ΡŽΡ‚ тСматичСскими. НапримСр, ΠΏΡ€ΠΈ ΠΎΠ±Ρ‰Π΅ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, ΠΊΠΎΠ³Π΄Π° Ρƒ всСх участников Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΎ записи Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π’ этом случаС Π²Π΅Ρ‚ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для отдСлСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, сдСланных ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΎΡ‚ ΠΎΠ±Ρ‰Π΅Π³ΠΎ рСпозитория. Π’Π΅Ρ‚ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΈ Π² случаС с созданиСм pull-request’Π°.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Π΅Ρ‚ΠΊΠΈ происходит довольно просто. ΠΠ°Ρ…ΠΎΠ΄ΡΡΡŒ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, Π½Π°Π±Π΅Ρ€ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

НовыС Π²Π΅Ρ‚ΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· master, Π±Π΅Ρ€ΠΈΡ‚Π΅ Π»ΡŽΠ±ΡƒΡŽ!

ΠΠ°Ρ…ΠΎΠ΄ΡΡΡŒ Π² Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ созданной Π²Π΅Ρ‚ΠΊΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅. ВноситС Π² ΠΊΠΎΠ΄ свои измСнСния, Π° ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚Π΅ просто ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΠΊ своСй основной Π²Π΅Ρ‚ΠΊΠ΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ pull request, Π²Ρ‹Π±Ρ€Π°Π² Π²Π΅Ρ‚ΠΊΡƒ new_branch ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡ€Π΅ΠΆΠ΄Π΅ ΡΠ»ΠΈΡ‚ΡŒ измСнСния ΠΈΠ· Π½Π΅Ρ‘ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Рассмотрим это ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅:

Если Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π² свой ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ вновь ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ (Π½Π΅ ΡΠ»ΠΈΠ²Π°Ρ‚ΡŒ Π΅Ρ‘ с master), Π΄Π΅Π»Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

НС Ρ‚ΠΎΡ€ΠΎΠΏΠΈΡ‚Π΅ΡΡŒ ΡΠ»ΠΈΠ²Π°Ρ‚ΡŒ измСнСния. Если Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ заладилось, ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ:

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ всС Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Π²Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ смСрТСны (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΅ΡΡ‚ΡŒ) Π² Π²Π΅Ρ‚ΠΊΠ°Ρ… develop ΠΈΠ»ΠΈ master:

ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌ измСнСния

Π”ΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ Ρ‚Π°ΠΊΠΈ Π΄ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° поставлСнный вопрос: Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request, Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ. Как ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρƒ рСпозитория свои измСнСния?

Для этого Π·Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² свой Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚, Π²Ρ‹Π±ΠΈΡ€Π°ΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΈ ΠΈΡ‰ΠΈΡ‚Π΅ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π·Π΅Π»Ρ‘Π½ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ (Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания поста ΠΎΠ½Π° Π±Ρ‹Π»Π° Ρ‚Π°ΠΊΠΎΠ²ΠΎΠΉ, Ссли Π΄Π°ΠΆΠ΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ измСнится, Π΄ΡƒΠΌΠ°ΡŽ, Π½Π°ΠΉΡ‚ΠΈ Π΅Ρ‘ Π±ΡƒΠ΄Π΅Ρ‚ нСслоТно).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

А дальшС. ΠΆΠ΄Π°Ρ‚ΡŒ. Пока ΠΏΡ€ΠΈΠ΄Ρ‘Ρ‚ Π²Π»Π°Π΄Π΅Π»Π΅Ρ† ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ рСпозитория ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ‚/ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚ ваши измСнСния.

Ну Π²ΠΎΡ‚, ΠΌΡ‹ Π΅Π³ΠΎ достигли. ΠŸΡ€ΠΎΡΠ²Π΅Ρ‚Π»Π΅Π½ΠΈΡ Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ πŸ™‚

Как ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ измСнСния

Когда Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ староС состояниС ΡƒΠΆΠ΅ проиндСксированных Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΎ Π½ΠΈΡ… совсСм (ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ упомянутая здСсь опСрация ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ всю Π²Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°!):

CΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒΡΡ. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ откатываСмся Π½Π°Π·Π°Π΄ Π½Π° 1 ΠΊΠΎΠΌΠΌΠΈΡ‚. Для измСнСния состояния Π² этой ΠΆΠ΅ Π²Π΅Ρ‚ΠΊΠ΅ ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ рСпозитория Ρ‚ΠΎΠΆΠ΅ придётся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³Ρ€ΡƒΠ±ΡƒΡŽ силу β€” Ρ„Π»Π°Π³ force :

Или ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ происходили с ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ:

А ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅?

Π˜Ρ‚ΠΎΠ³ΠΎΠ² ΠΏΠΎΠ΄Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ стану. Для заинтСрСсованных Π»ΠΈΡ† ссылочка Π½Π° Π½Π΅ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ: The Git Community Book

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

ВнСсСниС собствСнного Π²ΠΊΠ»Π°Π΄Π° Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹

Π’Π΅ΠΏΠ΅Ρ€ΡŒ наша учётная запись создана ΠΈ настроСна, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΆΠ΅ пройдёмся ΠΏΠΎ дСталям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ ΠΏΡ€ΠΈ внСсСнии Π²ΠΊΠ»Π°Π΄Π° Π² ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠΉ (fork)

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ свой Π²ΠΊΠ»Π°Π΄ Π² ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρƒ нас Π½Π΅Ρ‚ ΠΏΡ€Π°Π² Π½Π° внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡƒΡ‚Ρ‘ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ (push) ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ своё собствСнноС ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ (fork) ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ GitHub создаст Π²Π°ΡˆΡƒ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ копию ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, данная копия Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² вашСм пространствС ΠΈΠΌΡ‘Π½ ΠΈ Π²Ρ‹ смоТСтС Π»Π΅Π³ΠΊΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ измСнСния ΠΏΡƒΡ‚Ρ‘ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ (push) ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΠΈ Ρ‚Π°ΠΊ слоТилось, Ρ‡Ρ‚ΠΎ англоязычный Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Β«forkΒ» (созданиС вСтвлСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°) ΠΈΠΌΠ΅Π» Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ контСкстный смысл, Π΄Π°Π½Π½Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΎΠ·Π½Π°Ρ‡Π°Π», Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‘Π» ΠΈΠ»ΠΈ Π²Π΅Π΄Ρ‘Ρ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΎΡ‚ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π°, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ, ΠΈΠ½ΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π» созданиС ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π°Π²Ρ‚ΠΎΡ€Π°ΠΌΠΈ. Π’ контСкстС GitHub, Β«forkΒ» (созданиС вСтвлСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°) просто ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ созданиС вСтвлСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² собствСнном пространствС ΠΈΠΌΡ‘Π½, Ρ‡Ρ‚ΠΎ позволяСт Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Π΅ измСнСния ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ свой собствСнный Π²ΠΊΠ»Π°Π΄ Π² Π±ΠΎΠ»Π΅Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π½Π΅ обСспокоСны Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π² Ρ€ΠΎΠ»ΠΈ соавторов, ΠΈΠΌΠ΅Π»ΠΈ ΠΏΡ€Π°Π²ΠΎ Π½Π° внСсСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡƒΡ‚Ρ‘ΠΌ ΠΈΡ… ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ (push). Π›ΡŽΠ΄ΠΈ просто ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои собствСнныС вСтвлСния (fork), Π²Π½ΠΎΡΠΈΡ‚ΡŒ Ρ‚ΡƒΠ΄Π° измСнСния, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ свои внСсённыС измСнСния Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΡƒΡ‚Ρ‘ΠΌ создания запроса Π½Π° принятиС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Pull Request), сами ΠΆΠ΅ запросы Π½Π° принятиС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Pull Request) Π±ΡƒΠ΄ΡƒΡ‚ описаны Π΄Π°Π»Π΅Π΅. Запрос Π½Π° принятиС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ (Pull Request) ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚Π²ΡŒ с обсуТдСниСм отправляСмого ΠΊΠΎΠ΄Π°, ΠΈ Π°Π²Ρ‚ΠΎΡ€ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΅Π³ΠΎ участники, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ участиС Π² обсуТдСнии ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π°Π²Ρ‚ΠΎΡ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠΈ Π΄ΠΎΠ²ΠΎΠ»Π΅Π½, послС Ρ‡Π΅Π³ΠΎ Π°Π²Ρ‚ΠΎΡ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ измСнСния Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π·Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° страницу ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅Β» (Β«ForkΒ»), которая располоТСна Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ.

Π§Π΅Ρ€Π΅Π· нСсколько сСкунд Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ Π½Π° ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π½ΠΎΠ²ΡƒΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½ΡƒΡŽ страницу, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ Π²Π°ΡˆΡƒ копию, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° Π½Π° запись.

Π Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс с использованиСм GitHub

GitHub Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ с ΠΏΡ€ΠΈΡ†Π΅Π»ΠΎΠΌ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс с использованиСм запросов Π½Π° слияния. Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ всСм: ΠΈ малСньким, сплочённым Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΎΠ΄Π½ΠΎΠ³ΠΎ рСпозитория, ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ; ΠΈ ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΌ распрСдСлённым компаниям, ΠΈ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡ†Π΅Π², ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ… Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ с сотнСй ΠΊΠΎΠΏΠΈΠΉ. Π Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс GitHub основан Π½Π° тСматичСских Π²Π΅Ρ‚ΠΊΠ°Ρ…, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ Π² Π³Π»Π°Π²Π΅ Π’Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ Π² Git.

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ это ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚:

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Ρ„ΠΎΡ€ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² с измСнСниями, ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

ΠžΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ эту Π²Π΅Ρ‚ΠΊΡƒ Π² ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° GitHub.

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ запрос Π½Π° слияниС Π½Π° GitHub.

ΠžΠ±ΡΡƒΠΆΠ΄Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ, вноситС измСнСния, Ссли Π½ΡƒΠΆΠ½ΠΎ.

Π’Π»Π°Π΄Π΅Π»Π΅Ρ† ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ принятии ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π»ΠΈΠ±ΠΎ ΠΎΠ± ΠΈΡ… ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠΈ.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ master ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Π΅Ρ‘ Π² свой Ρ„ΠΎΡ€ΠΊ.

ΠžΡ‡Π΅Π½ΡŒ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, описанный Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ДиспСтчСр ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π³Π»Π°Π²Ρ‹ 5, Π½ΠΎ вмСсто использования элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹, ΠΊΠΎΠΌΠ°Π½Π΄Π° сотрудничаСт Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-интСрфСйс.

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ измСнСния Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½Π½Ρ‹ΠΉ Π½Π° GitHub.

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт GitHub CLI вмСсто Π²Π΅Π±-интСрфСйса GitHub. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ доступСн Π² систСмах Windows, MacOS ΠΈ Linux. ΠŸΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅ страницу GitHub CLI homepage для получСния инструкций ΠΏΠΎ установкС ΠΈ использованию.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ запроса Π½Π° слияниС

Π’ΠΎΠ½ΠΈ ΠΈΡ‰Π΅Ρ‚, Ρ‡Π΅Π³ΠΎ Π±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½Π° своём новСньком Arduino. ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, ΠΎΠ½ Π½Π°ΡˆΡ‘Π» классный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° https://github.com/schacon/blink.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

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

ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅ΠΌ Π½Π°ΡˆΡƒ копию

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ

Вносим свои измСнСния

ЀиксируСм измСнСния Π² тСматичСской Π²Π΅Ρ‚ΠΊΡƒ

ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π² Π½Π°ΡˆΡƒ копию Π½Π° GitHub

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, Ссли ΠΌΡ‹ Π·Π°ΠΉΠ΄Ρ‘ΠΌ Π½Π° страничку нашСй ΠΊΠΎΠΏΠΈΠΈ Π½Π° GitHub, ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ GitHub Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ» наши измСнСния ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ запрос Π½Π° слияниС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ большой Π·Π΅Π»Ρ‘Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ.

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΉΡ‚ΠΈ Π½Π° страницу Β«BranchesΒ», ΠΏΠΎ адрСсу https://github.com/ /

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

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

Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ список ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² нашСй тСматичСской Π²Π΅Ρ‚ΠΊΠ΅, Β«ΠΎΠΏΠ΅Ρ€Π΅Π΄ΠΈΠ²ΡˆΠΈΡ…Β» Π²Π΅Ρ‚ΠΊΡƒ master (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС всСго ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ‚) ΠΈ прСдпросмотр всСх ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, вносимых этими ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

ПослС создания запроса Π½Π° слияниС (ΠΏΡƒΡ‚Ρ‘ΠΌ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Create pull requestΒ» Π½Π° этой страницС) Π²Π»Π°Π΄Π΅Π»Π΅Ρ† Ρ„ΠΎΡ€ΠΊΠ½ΡƒΡ‚ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… измСнСниях со ссылкой Π½Π° страницу с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ запросС.

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

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° запроса Π½Π° слияниС

На этом этапС, Π²Π»Π°Π΄Π΅Π»Π΅Ρ† ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ измСнСния, ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ, ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ…. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π΅ΠΌΡƒ ΠΈΠΌΠΏΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ идСя, Π½ΠΎ ΠΎΠ½ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‘Π» Π±Ρ‹ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ свСта.

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π»Π°Π΄Π΅Π»Π΅Ρ† ΠΏΡ€ΠΎΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ измСнСния, Π°Π²Ρ‚ΠΎΡ€ запроса Π½Π° слияниС (Π° Ρ‚Π°ΠΊΠΆΠ΅ всС подписавшиСся Π½Π° этот Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ) ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ увСдомлСния. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ рассмотрим ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ увСдомлСния, Π½ΠΎ сСйчас, Ссли Π’ΠΎΠ½ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ» увСдомлСния Ρ‡Π΅Ρ€Π΅Π· ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ, ΠΎΠ½ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ письмо:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

ΠšΡ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ запросу Π½Π° слияниС. На Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° обсуТдСния запроса Π½Π° слияниС ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π³Π΄Π΅ Π²Π»Π°Π΄Π΅Π»Π΅Ρ† ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° оставил ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊΠ°ΠΊ ΠΊ строкС ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ ΠΈ Π² основной сСкции обсуТдСния. Как Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΊΠΎΠ΄Ρƒ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Π²ΠΈΠ΄Π΅ обсуТдСния.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

Π’Π΅ΠΏΠ΅Ρ€ΡŒ участник ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ измСнСния Π±Ρ‹Π»ΠΈ приняты. К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, это Ρ‚ΠΎΠΆΠ΅ Π»Π΅Π³ΠΊΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΡ‡Ρ‚Ρƒ, Π²Π°ΠΌ потрСбуСтся Π·Π°Π½ΠΎΠ²ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ свои измСнСния Π² список рассылки, Π° ΠΏΡ€ΠΈ использовании GitHub Π²Ρ‹ просто Π΄Π΅Π»Π°Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ повторяСтС push, Ρ‡Ρ‚ΠΎ автоматичСски обновляСт запрос Π½Π° слияниС. На рисункС Ѐинальная стадия запроса Π½Π° слияниС Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π² ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌ запросС Π½Π° слияниС старый ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΊ ΠΊΠΎΠ΄Ρƒ Π±Ρ‹Π» свёрнут, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ относится ΠΊ строкС, которая с Ρ‚Π΅Ρ… ΠΏΠΎΡ€ измСнилась.

Когда участник сдСлаСт это, Π²Π»Π°Π΄Π΅Π»Π΅Ρ† ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° снова ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, Π° Π½Π° страницС запроса Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ΅Π½Π°. ЀактичСски, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строка ΠΊΠΎΠ΄Π° ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°, GitHub Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ это ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅Π΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Ссли Π²Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘Ρ‚Π΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Files ChangedΒ» Π² этом запросС Π½Π° слияниС, Ρ‚ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Β«ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽΒ» Ρ€Π°Π·Π½ΠΈΡ†Ρƒ β€” это суммарныС измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΏΡ€ΠΈ слиянии тСматичСской Π²Π΅Ρ‚ΠΊΠΈ. Π’ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ git diff это эквивалСнтно ΠΊΠΎΠΌΠ°Π½Π΄Π΅ git diff master…​
для Π²Π΅Ρ‚ΠΊΠΈ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ основан этот запрос Π½Π° слияниС. Π’ ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ примСняСмых ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½Π΅Π΅ описан Π΄Π°Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ.

GitHub Ρ‚Π°ΠΊ ΠΆΠ΅ провСряСт ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ запрос Π½Π° слияниС Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Ρ‘Π½ Π±Π΅Π· ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² ΠΈ прСдоставляСт ΠΊΠ½ΠΎΠΏΠΊΡƒ для осущСствлСния слияния Π½Π° сСрвСрС. Π­Ρ‚Π° ΠΊΠ½ΠΎΠΏΠΊΠ° отобраТаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° Π½Π° запись Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅Π΅ слияниС. По Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Π½Π° Π½Π΅Ρ‘ GitHub ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Ρ‘Ρ‚ Β«non-fast-forwardΒ» слияниС, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ Π΄Π°ΠΆΠ΅ Ссли слияниС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ осущСствлСно ΠΏΠ΅Ρ€Π΅ΠΌΠΎΡ‚ΠΊΠΎΠΉ Π²ΠΏΠ΅Ρ€Π΅Π΄, всё Ρ€Π°Π²Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ создан ΠΊΠΎΠΌΠΌΠΈΡ‚ слияния.

ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ произвСсти слияниС локально. Если эта Π²Π΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ слита Π² master Π²Π΅Ρ‚ΠΊΡƒ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π° Π½Π° сСрвСр, Ρ‚ΠΎ GitHub автоматичСски Π·Π°ΠΊΡ€ΠΎΠ΅Ρ‚ запрос Π½Π° слияниС.

Π­Ρ‚ΠΎ основной Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° GitHub. Π‘ΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ тСматичСскиС Π²Π΅Ρ‚ΠΊΠΈ, ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ запросы Π½Π° слияниС, производится обсуТдСниС, ΠΏΡ€ΠΈ нСобходимости производятся Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² Π²Π΅Ρ‚ΠΊΠ΅ ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, запрос Π»ΠΈΠ±ΠΎ закрываСтся, Π»ΠΈΠ±ΠΎ сливаСтся.

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ запросы Π½Π° слияниС ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ с ΠΊΠ΅ΠΌ-Ρ‚ΠΎ Π΅Ρ‰Ρ‘ ΠΈ Ρƒ вас ΠΎΠ±ΠΎΠΈΡ… Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° записи, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ свою Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ запрос Π½Π° слияниС Π² master Π²Π΅Ρ‚ΠΊΡƒ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΈ Π΅Π³ΠΎ обсуТдСния. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Π΅ запросы Π½Π° слияниС

На Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΡ‹ рассмотрСли основы участия Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π½Π° GitHub, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ интСрСсныС сСкрСты ΠΈ ΡƒΠ»ΠΎΠ²ΠΊΠΈ ΠΊΠ°ΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ запросов слияния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π±ΠΎΠ»Π΅Π΅ эффСктивно ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Запросы слияния ΠΊΠ°ΠΊ ΠŸΠ°Ρ‚Ρ‡ΠΈ

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

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

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

Π‘Π»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π° исходным Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ

Если ваш запрос Π½Π° слияниС устарСл ΠΈΠ»ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слит Π±Π΅Π· ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ², Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠ³ просто Π΅Π³ΠΎ ΡΠ»ΠΈΡ‚ΡŒ. GitHub ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ это Π·Π° вас ΠΈ ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· запросов Π½Π° слияниС ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΅Π³ΠΎ ΡΠ»ΠΈΡ‚ΡŒ Π±Π΅Π· ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Π½Π΅Ρ‚.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

Если Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ Запрос ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ слияния, Ρ‚ΠΎ Π²Π°ΠΌ слСдуСт ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ свою Π²Π΅Ρ‚ΠΊΡƒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΉ Π½Π΅ Π΄Π΅Π»Π°Π» лишнюю Ρ€Π°Π±ΠΎΡ‚Ρƒ.

БущСствуСт Π΄Π²Π° основных Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»ΠΈΠ±ΠΎ ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свою Π²Π΅Ρ‚ΠΊΡƒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ master Π²Π΅Ρ‚ΠΊΠΈ исходного рСпозитория), Π»ΠΈΠ±ΠΎ ΡΠ»ΠΈΡ‚ΡŒ Ρ†Π΅Π»Π΅Π²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π² свою.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π° GitHub Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ послСдний Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΌΡ‹ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅. Π’Π°ΠΆΠ½Π° история ΠΈ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ слияниС, Π° ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ принСсёт Π²Π°ΠΌ Π½ΠΈΡ‡Π΅Π³ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ чистой истории, ΠΏΡ€ΠΈ этом ΠΎΠ½ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ слоТнСС ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ источником ошибок.

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

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Β«tonychaconΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ использовали Ρ€Π°Π½Π΅Π΅, основной Π°Π²Ρ‚ΠΎΡ€ сдСлал измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‚ с запросом Π½Π° слияниС. Рассмотрим это пошагово.

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ послСдниС измСнСния ΠΈΠ· Π½Π΅Π³ΠΎ.

Π‘Π»ΠΈΠ²Π°Π΅ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π² Π½Π°ΡˆΡƒ Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ.

Π˜ΡΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚.

ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌ измСнСния Π² Ρ‚Ρƒ ΠΆΠ΅ Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ это Π±ΡƒΠ΄Π΅Ρ‚ сдСлано, запрос Π½Π° слияниС Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ слияния.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

Если Π²Ρ‹ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Ρ‘ ΠΏΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ, Ρ‚ΠΎ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π½ΠΎ Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ рСкомСндуСтся ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΠΆΠ΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ запрос Π½Π° слияниС. Если Π΄Ρ€ΡƒΠ³ΠΈΠ΅ люди ΡƒΠΆΠ΅ стянули Π΅Ρ‘ ΠΈ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Ρ‚ΠΎ Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Ρ‘Ρ‚Π΅ΡΡŒ со всСми ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, описанными Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠžΠΏΠ°ΡΠ½ΠΎΡΡ‚ΠΈ пСрСмСщСния Π³Π»Π°Π²Ρ‹ 3. ВмСсто этого, ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π² Π½ΠΎΠ²ΡƒΡŽ Π½Π° GiHub ΠΈ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ запрос Π½Π° слияниС, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ, Π·Π°Ρ‚Π΅ΠΌ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ исходный.

Бсылки

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ваш ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ вопрос Π±ΡƒΠ΄Π΅Ρ‚: «Как ΠΌΠ½Π΅ ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ запрос слияния?Β» ΠžΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ, сущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ способов ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π΅Ρ‰ΠΈ практичСски Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° записи Π½Π° GitHub.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Ρ‘ΠΌ с пСрСкрёстных ссылок для запросов слияния ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. ВсСм запросам слияния ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Π½ΠΎΠΌΠ΅Ρ€Π° Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. НапримСр, Ρƒ вас Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ запроса Π½Π° слияниС с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ #3 ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ #3. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° любой запрос слияния ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ мСста, просто Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ # Π² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΈΠ»ΠΈ описаниС. Π’Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ, Ссли ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΈΠ»ΠΈ запрос слияния находятся Π³Π΄Π΅-Ρ‚ΠΎ Π΅Ρ‰Ρ‘; ΠΏΠΈΡˆΠΈΡ‚Π΅ username# Ссли ΡΡΡ‹Π»Π°Π΅Ρ‚Π΅ΡΡŒ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈΠ»ΠΈ запрос слияния, находящиСся Π² ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Ρ‘Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΈΠ»ΠΈ username/repo# Ссли ΡΡΡ‹Π»Π°Π΅Ρ‚Π΅ΡΡŒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Рассмотрим это Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π±Π°Π·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π²Π΅Ρ‚ΠΊΡƒ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, создали Π½ΠΎΠ²Ρ‹ΠΉ запрос слияния для Π½Π΅Ρ‘ ΠΈ сСйчас Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ запрос слияния ΠΈΠ· Π½ΠΎΠ²ΠΎΠ³ΠΎ. Π’Π°ΠΊ ΠΆΠ΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π½Π°Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽΡΡ Π² ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Ρ‘Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΈ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈΠ· ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ описаниС ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΠŸΠ΅Ρ€Π΅ΠΊΡ€Ρ‘ΡΡ‚Π½Ρ‹Π΅ ссылки Π² запросС слияния.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pull request git

Когда ΠΌΡ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠΌ запрос Π½Π° слияниС, Ρ‚ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ пСрСкрёстных ссылок Π² запросС слияния.

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

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

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