πŸ”€ Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ с мастСром Π² Git? πŸ”€

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ с основной Π²Π΅Ρ‚ΠΊΠΎΠΉ (master) Π² git, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ шаги:

1. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ Π² основной Π²Π΅Ρ‚ΠΊΠ΅ (master):

git checkout master

2. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ "git merge" с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ΠΈ Π²Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ с master:

git merge branch_name

Π“Π΄Π΅ "branch_name" - это Π½Π°Π·Π²Π°Π½ΠΈΠ΅ вашСй Π²Π΅Ρ‚ΠΊΠΈ. НапримСр, Ссли ваша Π²Π΅Ρ‚ΠΊΠ° называСтся "feature", ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

git merge feature

3. Git попытаСтся автоматичСски ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ измСнСния с master. Если Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹, Π²Π°ΠΌ придСтся Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Для этого ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»/Ρ„Π°ΠΉΠ»Ρ‹ с ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°ΠΌΠΈ, ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΈΡ… ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ измСнСния Π² git:

git add conflicted_file

ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ этот шаг для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Π°, Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

git commit

4. ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ объСдинСния ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π²Π΅Ρ‚ΠΊΠΈ:

git push origin master

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

ЗдравствуйтС! БСгодня я расскаТу Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ с ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΌΠΈ измСнСниями Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ с использованиСм Git. Π—Π½Π°Π½ΠΈΠ΅ этого процСсса ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ для эффСктивного совмСстного Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ управлСния вСрсиями вашСго ΠΊΠΎΠ΄Π°. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ!


Π¨Π°Π³ 1: ОбновлСниС Π²Π΅Ρ‚ΠΊΠΈ master

ΠŸΠ΅Ρ€Π΅Π΄ объСдинСниСм Π²Π΅Ρ‚ΠΎΠΊ Π²Π°ΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ваша Π²Π΅Ρ‚ΠΊΠ° master ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° Π΄ΠΎ послСднСй вСрсии. Для этого Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:


        git checkout master
        git pull
    

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ вас Π½Π° Π²Π΅Ρ‚ΠΊΡƒ master ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ Π΅Π΅ Π΄ΠΎ послСднСй вСрсии. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас Π½Π΅Ρ‚ нСзафиксированных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Π΅Ρ‚ΠΊΠ΅ master, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π΄Π°Π½Π½Ρ‹Ρ….


Π¨Π°Π³ 2: ОбъСдинСниС Π²Π΅Ρ‚ΠΎΠΊ

Когда ваша Π²Π΅Ρ‚ΠΊΠ° master ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ объСдинСнию Π²Π΅Ρ‚ΠΎΠΊ. Π’Π΅Ρ€Π½ΠΈΡ‚Π΅ΡΡŒ ΠΊ своСй Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ с master. НапримСр, Ссли ваша Π²Π΅Ρ‚ΠΊΠ° называСтся "feature-branch", Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:


        git checkout feature-branch
    

Π”Π°Π»Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git merge, ΡƒΠΊΠ°Π·Π°Π² Π²Π΅Ρ‚ΠΊΡƒ master Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°:


        git merge master
    

Git автоматичСски попытаСтся ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ измСнСния ΠΈΠ· вашСй Π²Π΅Ρ‚ΠΊΠΈ с измСнСниями ΠΈΠ· Π²Π΅Ρ‚ΠΊΠΈ master. Если Git ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΈΡ….


Π¨Π°Π³ 3: Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Git ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ ΠΏΡ€ΠΈ объСдинСнии Π²Π΅Ρ‚ΠΎΠΊ. ΠšΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ„Π°ΠΉΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ Π² ΠΎΠ±Π΅ΠΈΡ… Π²Π΅Ρ‚ΠΊΠ°Ρ…. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹, слСдуйтС этим шагам:

  1. Git ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Π²Π°ΠΌ Ρ„Π°ΠΉΠ»Ρ‹ с ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°ΠΌΠΈ. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ эти Ρ„Π°ΠΉΠ»Ρ‹ Π² своСм Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΊΠΎΠ΄Π°.
  2. НайдитС мСста ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ², ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π°ΠΌΠΈ <<<<<<< ΠΈ >>>>>>>.
  3. Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹, оставив Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄. Π£Π΄Π°Π»ΠΈΡ‚Π΅ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Ρ‹ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ².
  4. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ измСнСния Π² Ρ„Π°ΠΉΠ»Π°Ρ….

Π¨Π°Π³ 4: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈ зафиксированиС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

ПослС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ всСх ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git add для отслСТивания ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git commit для зафиксирования ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:


        git add .
        git commit -m "ОбъСдинСниС Π²Π΅Ρ‚ΠΎΠΊ feature-branch ΠΈ master"
    

Π’ сообщСнии ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ‚ΠΊΠΈ feature-branch ΠΈ master Π±Ρ‹Π»ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹.


Π¨Π°Π³ 5: ОбновлСниС ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ рСпозитория

ПослСдний шаг - ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ измСнСния Π² ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git push:


        git push origin feature-branch
    

Π—Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ "feature-branch" Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ своСй Π²Π΅Ρ‚ΠΊΠΈ. ПослС выполнСния этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ваша Π²Π΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ объСдинСна с Π²Π΅Ρ‚ΠΊΠΎΠΉ master Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.


Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅:

Π’Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΡƒΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ с ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΌΠΈ измСнСниями Π² Π²Π΅Ρ‚ΠΊΡƒ master с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Git. Π­Ρ‚ΠΎΡ‚ процСсс являСтся Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ управлСния вСрсиями вашСго ΠΊΠΎΠ΄Π°. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ объСдинСниСм всСгда обновляйтС Π²Π΅Ρ‚ΠΊΡƒ master, Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΠΉΡ‚Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹, тСстируйтС ΠΈ зафиксируйтС измСнСния.

НадСюсь, эта ΡΡ‚Π°Ρ‚ΡŒΡ смогла ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° ваш вопрос ΠΈ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ Π² освоСнии Git. Π£Π΄Π°Ρ‡ΠΈ Π² вашСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

How to Merge GitHub Branches to Master

Git & GitHub Tutorial for Beginners #9 - Merging Branches (& conflicts)

How to Merge Master into any Branch in Git

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ”§ Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Git Π² PyCharm: Π»Π΅Π³ΠΊΠΈΠΉ Π³ΠΈΠ΄ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… πŸ”§

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ git personal access token: мСсто Π΅Π³ΠΎ взятия

πŸ”€ Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ с мастСром Π² Git? πŸ”€

Как Π±Π΅Π·Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ Git ΠΈΠ· вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° πŸ—‚οΈ