🎾 Как мячиком ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒ с ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ git?

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² Git, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git rebase -i. Π’ΠΎΡ‚ быстрый шаг Π·Π° шагом процСсс:

  1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git
  2. ЗапуститС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ git rebase -i HEAD~N, Π³Π΄Π΅ N - число ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ΡŒ
  3. Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ pick Π½Π° squash ΠΈΠ»ΠΈ s для всСх ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΊΡ€ΠΎΠΌΠ΅ самого ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ
  4. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»
  5. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ сообщСниС ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, объСдинив ΠΈΡ…
  6. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»
  7. Git ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² ΠΎΠ΄ΠΈΠ½ историчСский ΠΊΠΎΠΌΠΌΠΈΡ‚

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΡΠΊΠ²ΠΎΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Π²Π΅Ρ‚ΠΊΠΈ Git, поэтому Π±ΡƒΠ΄ΡŒΡ‚Π΅ остороТны ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

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

Как ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ git

ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой записи ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, сдСланных Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Они слуТат ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ отслСТивания истории ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Однако ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ нСсколько ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² ΠΎΠ΄ΠΈΠ½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Π±ΠΎΠ»Π΅Π΅ понятной ΠΈ Π»Π΅Π³ΠΊΠΎΠΉ для чтСния. Π’ git этот процСсс называСтся "сквошингом ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²".

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ сквош ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² git ΠΈ Π΄Π°Π΄ΠΈΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования.

Π¨Π°Π³ 1: Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² для сквоша

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ шаг - Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ (Ρ…Π΅ΡˆΠΈ) ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова git:

git rebase -i HEAD~N

Π³Π΄Π΅ N - количСство ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ΡŒ. НапримСр, "git rebase -i HEAD~3" ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ΡŒ послСдниС 3 ΠΊΠΎΠΌΠΌΠΈΡ‚Π°.

Π¨Π°Π³ 2: ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ git rebase

ПослС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git rebase Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΏΠ΅Ρ€Π΅Π΄ сквошСм. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ настроСн ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² вашСй систСмС.

Π’ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ прСдставлСн Π² Π²ΠΈΠ΄Π΅ строки. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π° для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ "pick" Π½Π° "s" ΠΈΠ»ΠΈ "squash". МоТно Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ "s" вмСсто "squash".

pick 8f9f7d4 Commit 1
s 07264b0 Commit 2
s e3bd7a1 Commit 3

ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ рСдактирования сохранитС ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ».

Π¨Π°Π³ 3: Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ коммСнтария сквошСнного ΠΊΠΎΠΌΠΌΠΈΡ‚Π°

ПослС закрытия Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°, git ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ Π²Π°ΠΌ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ сквошСнного ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ…. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ», ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

Π¨Π°Π³ 4: Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ сквоша

ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ рСдактирования коммСнтария git Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ сквош ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². Если встрСтятся ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ слияния, git ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ Π²Π°ΠΌ ΠΈΡ… Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ. Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡ‚Π΅ процСсс сквоша.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ваши Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Π² ΠΎΠ΄ΠΈΠ½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚, Π° история Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π° ΠΈ Π±ΠΎΠ»Π΅Π΅ понятна.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² использования сквоша ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1: Бквош Π΄Π²ΡƒΡ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ нас Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹:

commit 234c34d
Author: John Doe <johndoe@example.com>
Date:   Mon Jan 10 13:46:22 2022 +0300

    Add new feature
    
commit abcdef2
Author: John Doe <johndoe@example.com>
Date:   Mon Jan 9 19:32:02 2022 +0300

    Fix bug

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ "git rebase -i HEAD~2", ΠΎΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ rebase:

pick 234c34d Add new feature
pick abcdef2 Fix bug

ИзмСним Π²Ρ‚ΠΎΡ€ΡƒΡŽ строку Π½Π° "s" ΠΈΠ»ΠΈ "squash":

pick 234c34d Add new feature
s abcdef2 Fix bug

ПослС сохранСния ΠΈ закрытия Ρ„Π°ΠΉΠ»Π° git ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ сквошСнного ΠΊΠΎΠΌΠΌΠΈΡ‚Π°:

Add new feature
    
Fix bug

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» послС рСдактирования коммСнтария. Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ слияния, Ссли ΠΎΠ½ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ‚:

commit 234c34d
Author: John Doe <johndoe@example.com>
Date:   Mon Jan 10 13:46:22 2022 +0300

    Add new feature

    Fix bug

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2: Бквош Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ нас Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹:

commit 9b0e54f
Author: Jane Smith <janesmith@example.com>
Date:   Sat Jan 8 09:15:41 2022 +0300

    Refactor code
    
commit 8aaf3c2
Author: Jane Smith <janesmith@example.com>
Date:   Fri Jan 7 16:52:19 2022 +0300

    Add new feature
    
commit 4cd7b1e
Author: Jane Smith <janesmith@example.com>
Date:   Thu Jan 6 21:30:55 2022 +0300

    Fix bug

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ "git rebase -i HEAD~3", ΠΎΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ rebase:

pick 9b0e54f Refactor code
pick 8aaf3c2 Add new feature
pick 4cd7b1e Fix bug

ИзмСним Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ строки Π½Π° "s" ΠΈΠ»ΠΈ "squash":

pick 9b0e54f Refactor code
s 8aaf3c2 Add new feature
s 4cd7b1e Fix bug

ПослС сохранСния ΠΈ закрытия Ρ„Π°ΠΉΠ»Π° git ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ сквошСнного ΠΊΠΎΠΌΠΌΠΈΡ‚Π°:

Refactor code
    
Add new feature
    
Fix bug

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» послС рСдактирования коммСнтария. Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ слияния, Ссли ΠΎΠ½ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΌΠΈΡ‚:

commit 9b0e54f
Author: Jane Smith <janesmith@example.com>
Date:   Sat Jan 8 09:15:41 2022 +0300

    Refactor code
    Add new feature
    Fix bug

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΡΠΊΠ²ΠΎΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π² git. Π­Ρ‚ΠΎΡ‚ процСсс ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ вашСго рСпозитория ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π΅ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΠΉ.

Π£Π΄Π°Ρ‡ΠΈ Π² вашСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ!

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

Git: ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ нСсколько ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² Π² ΠΎΠ΄ΠΈΠ½ (git squash)

GIT. Π˜Π½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Rebase. Как с Π½ΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ?

GIT. Rebase and SQUASH. Π”Π΅Π»Π°Π΅ΠΌ красивыС Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Ρ‹Π΅ commit-Ρ‹

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

πŸ”§ Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ PyCharm Professional: подробная инструкция для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² πŸš€

Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ PyCharm Π½Π° Kali Linux: пошаговая инструкция

πŸ”§ Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ email Π² git: простыС инструкции ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ

🎾 Как мячиком ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒ с ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌΠΈ git?

🧹 Как ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ head git: Π»Π΅Π³ΠΊΠΈΠΉ способ

πŸ”‘ Π¨Π°Π³ΠΈ ΠΏΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π² Git Bash: ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰Π΅Π΅ руководство

πŸ”§ Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ git: простыС шаги для успСха