πŸ”— Git: Как Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π½Π° 2? ΠŸΡ€ΠΎΡΡ‚ΠΎΠ΅ объяснСниС с пошаговой инструкциСй πŸš€

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π½Π° Π΄Π²Π°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git reset HEAD~ для ΠΎΡ‚ΠΌΠ΅Π½Ρ‹ послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΈ сохранСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π²Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ git add ΠΈ git commit.

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

Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π½Π° Π΄Π²Π° Π² Git

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

Π¨Π°Π³ 1: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом для разбиСния ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π½Π° Π΄Π²Π° являСтся созданиС Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ внСсти Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ измСнСния. Для этого Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

git checkout -b new_branch

Π—Π΄Π΅ΡΡŒ "new_branch" - это имя Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ создаСтС.

Π¨Π°Π³ 2: ΠžΡ‚ΠΌΠ΅Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΠΎΡ‚ΠΌΠ΅Π½Π΅ ΠΈΠ»ΠΈ внСсСнию ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ измСнСния, сдСланныС Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

git revert HEAD

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° создаст Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ отмСняСт всС измСнСния, внСсСнныС Π² послСдний ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π²Π΅Ρ‚ΠΊΠ΅.

Если ΠΆΠ΅ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ внСсти Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΈΡ… Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ.

Π¨Π°Π³ 3: Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°

ПослС внСсСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π½Π° Π΄Π²Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

git reset HEAD~1

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° удаляСт послСдний ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π²Π΅Ρ‚ΠΊΠΈ, сохраняя внСсСнныС измСнСния Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.

Π¨Π°Π³ 4: ЗафиксированиС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ измСнСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

git add .

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ всС измСнСния Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ для Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°.

git commit -m "Новый ΠΊΠΎΠΌΠΌΠΈΡ‚ 1"

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° создаст Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ с внСсСнными измСнСниями.

Π¨Π°Π³ 5: ОбновлСниС исходной Π²Π΅Ρ‚ΠΊΠΈ

ПослС раздСлСния ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° соотвСтствовала Π½ΠΎΠ²ΠΎΠΉ структурС ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ².

git checkout original_branch

Π—Π΄Π΅ΡΡŒ "original_branch" - это имя исходной Π²Π΅Ρ‚ΠΊΠΈ.

git merge new_branch

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ измСнСния ΠΈΠ· Π½ΠΎΠ²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π² ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ.

Π¨Π°Π³ 6: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ

ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ разбиСния ΠΊΠΎΠΌΠΌΠΈΡ‚Π° ΠΈ объСдинСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ, Ссли ΠΎΠ½Π° большС Π½Π΅ Π½ΡƒΠΆΠ½Π°:

git branch -d new_branch

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡƒΠ΄Π°Π»ΠΈΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ "new_branch".

Π’Ρ‹Π²ΠΎΠ΄

Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π½Π° Π΄Π²Π° позволяСт ΠΎΡ‚Ρ€Π°Π·ΠΈΡ‚ΡŒ измСнСния Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ ΠΈ позволяСт Π»ΡƒΡ‡ΡˆΠ΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ вСрсиями ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. БлСдуя описанным Π²Ρ‹ΡˆΠ΅ шагам, Π²Ρ‹ смоТСтС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π½Π° Π΄Π²Π° Π² Git ΠΈ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ процСсс Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

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

Git: Π£Ρ€ΠΎΠΊ 1. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚

Git с нуля.2: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ рСпозитория, status, add, commit, push

Git cherry pick. Как пСрСнСсти ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ

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

πŸ”§ Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ PyCharm Π½Π° Ubuntu: простая инструкция

πŸ”— Git: Как Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π½Π° 2? ΠŸΡ€ΠΎΡΡ‚ΠΎΠ΅ объяснСниС с пошаговой инструкциСй πŸš€

πŸ”™ Как ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² git

😎 Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ scipy Π² PyCharm: подробная инструкция для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…! πŸš€