15%

Π—Π°ΠΎΡ‰Π°Π΄ΠΆΡƒΠΉΡ‚Π΅ 15% Π½Π° всіх послугах хостингу

ΠŸΠ΅Ρ€Π΅Π²Ρ–Ρ€Ρ‚Π΅ свої Π½Π°Π²ΠΈΡ‡ΠΊΠΈ Ρ‚Π° ΠΎΡ‚Ρ€ΠΈΠΌΠ°ΠΉΡ‚Π΅ Π—Π½ΠΈΠΆΠΊΡƒ Π½Π° Π±ΡƒΠ΄ΡŒ-який Ρ‚Π°Ρ€ΠΈΡ„Π½ΠΈΠΉ ΠΏΠ»Π°Π½

Використовуй ΠΊΠΎΠ΄:

Skills
ΠŸΠΎΡ‡Π°Ρ‚ΠΈ
28.11.2024

Π ΠΎΠ±ΠΎΡ‚Π° Π· Π³Ρ–Π»ΠΊΠ°ΠΌΠΈ Π² Git’Ρ–

ΠžΡΠ²ΠΎΡ”Π½Π½Ρ розгалуТСння Git’Ρƒ Π½Π° VPS AlexHost

Навіщо використовувати розгалуТСння Git’Π° Π½Π° AlexHost? РозгалуТСння Git’Π° дозволяє розробляти Ρ„ΡƒΠ½ΠΊΡ†Ρ–Ρ—, виправляти ΠΏΠΎΠΌΠΈΠ»ΠΊΠΈ Ρ‚Π° Π±Π΅Π·ΠΏΠ΅Ρ‡Π½ΠΎ СкспСримСнтувати, Π·Π±Π΅Ρ€Ρ–Π³Π°ΡŽΡ‡ΠΈ ΡΡ‚Π°Π±Ρ–Π»ΡŒΠ½Ρ–ΡΡ‚ΡŒ основної ΠΊΠΎΠ΄ΠΎΠ²ΠΎΡ— Π±Π°Π·ΠΈ. Π— Git-ΠΎΠΏΡ‚ΠΈΠΌΡ–Π·ΠΎΠ²Π°Π½ΠΈΠΌ VPS Π²Ρ–Π΄ AlexHost Π· NVMe-сховищСм, ΠΏΠΎΠ²Π½ΠΈΠΌ root-доступом Ρ– захистом Π²Ρ–Π΄ DDoS Π²ΠΈ ΠΎΡ‚Ρ€ΠΈΠΌΠ°Ρ”Ρ‚Π΅ блискавичну ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½Ρ–ΡΡ‚ΡŒ Ρ– Π±Π΅Π·ΠΏΠ΅Ρ‡Π½Ρ– Ρ€ΠΎΠ±ΠΎΡ‡Ρ– процСси для Ρ–Π½Π΄ΠΈΠ²Ρ–Π΄ΡƒΠ°Π»ΡŒΠ½ΠΈΡ… Π°Π±ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ–Π². Π£ Ρ†ΡŒΠΎΠΌΡƒ посібнику Π²ΠΈ дізнаєтСся, як ΡΡ‚Π²ΠΎΡ€ΡŽΠ²Π°Ρ‚ΠΈ, ΠΊΠ΅Ρ€ΡƒΠ²Π°Ρ‚ΠΈ Ρ‚Π° ΠΎΠ±’Ρ”Π΄Π½ΡƒΠ²Π°Ρ‚ΠΈ Π³Ρ–Π»ΠΊΠΈ Π² Git’Ρ– Π· урахуванням особливостСй вашого сСрСдовища AlexHost.

1. Розуміння Π³Ρ–Π»ΠΎΠΊ

Π“Ρ–Π»ΠΊΠ° Π² Git’Ρ– – Ρ†Π΅, ΠΏΠΎ суті, Π²ΠΊΠ°Π·Ρ–Π²Π½ΠΈΠΊ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈΠΉ ΠΊΠΎΠΌΠΌΡ–Ρ‚ Π² історії вашого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ. Π“Ρ–Π»ΠΊΠ° Π·Π° замовчуванням Π² Git’Ρ– Π·Π°Π·Π²ΠΈΡ‡Π°ΠΉ Π½Π°Π·ΠΈΠ²Π°Ρ”Ρ‚ΡŒΡΡ main Π°Π±ΠΎ master. Коли Π²ΠΈ ΡΡ‚Π²ΠΎΡ€ΡŽΡ”Ρ‚Π΅ Π½ΠΎΠ²Ρƒ Π³Ρ–Π»ΠΊΡƒ, Π²ΠΈ ΡΡ‚Π²ΠΎΡ€ΡŽΡ”Ρ‚Π΅ Π½Π΅Π·Π°Π»Π΅ΠΆΠ½ΠΈΠΉ напрямок Ρ€ΠΎΠ·Ρ€ΠΎΠ±ΠΊΠΈ

2. ΠŸΠ΅Ρ€Π΅Π²Ρ–Ρ€ΠΊΠ° Ρ–ΡΠ½ΡƒΡŽΡ‡ΠΈΡ… Π³Ρ–Π»ΠΎΠΊ

ΠŸΠ΅Ρ€Ρˆ Π½Ρ–ΠΆ ΡΡ‚Π²ΠΎΡ€ΡŽΠ²Π°Ρ‚ΠΈ Π½ΠΎΠ²Ρƒ Π³Ρ–Π»ΠΊΡƒ, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ пСрСглянути Π³Ρ–Π»ΠΊΠΈ, які Π²ΠΆΠ΅ Ρ–ΡΠ½ΡƒΡŽΡ‚ΡŒ Ρƒ Π²Π°ΡˆΠΎΠΌΡƒ сховищі. Для Ρ†ΡŒΠΎΠ³ΠΎ скористайтСся Π½Π°ΡΡ‚ΡƒΠΏΠ½ΠΎΡŽ командою

git branch

Ця ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅Ρ€Π΅Π»Ρ–Ρ‡ΠΈΡ‚ΡŒ усі Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ– Π³Ρ–Π»ΠΊΠΈ Ρƒ Π²Π°ΡˆΠΎΠΌΡƒ сховищі Ρ– Π²ΠΈΠ΄Ρ–Π»ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΡ‡Π½Ρƒ Π³Ρ–Π»ΠΊΡƒ Π·Ρ–Ρ€ΠΎΡ‡ΠΊΠΎΡŽ (*)

3. БтворСння Π½ΠΎΠ²ΠΎΡ— Π³Ρ–Π»ΠΊΠΈ

Π©ΠΎΠ± створити Π½ΠΎΠ²Ρƒ Π³Ρ–Π»ΠΊΡƒ, скористайтСся Π½Π°ΡΡ‚ΡƒΠΏΠ½ΠΎΡŽ командою

git branch branch_name

Π—Π°ΠΌΡ–Π½Ρ–Ρ‚ΡŒ Π½Π°Π·Π²Ρƒ_Π³Ρ–Π»ΠΊΠΈ Π½Π° ΠΏΠΎΡ‚Ρ€Ρ–Π±Π½Ρƒ Π²Π°ΠΌ Π½Π°Π·Π²Ρƒ Π³Ρ–Π»ΠΊΠΈ. Наприклад

git branch feature/new-feature

ΠšΡ€Ρ–ΠΌ Ρ‚ΠΎΠ³ΠΎ, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ створити Π½ΠΎΠ²Ρƒ Π³Ρ–Π»ΠΊΡƒ Ρ– ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π΄ΠΎ Π½Π΅Ρ— ΠΎΠ΄Π½Ρ–Ρ”ΡŽ командою, Π²ΠΈΠΊΠΎΡ€ΠΈΡΡ‚ΠΎΠ²ΡƒΡŽΡ‡ΠΈ

git checkout -b branch_name

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄

git checkout -b feature/new-feature

4. ΠŸΠ΅Ρ€Π΅Ρ…Ρ–Π΄ ΠΌΡ–ΠΆ Π³Ρ–Π»ΠΊΠ°ΠΌΠΈ

Для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρƒ Π΄ΠΎ Ρ–ΡΠ½ΡƒΡŽΡ‡ΠΎΡ— Π³Ρ–Π»ΠΊΠΈ використовуйтС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ checkout

git checkout branch_name

Наприклад

git checkout main

5. ВнСсСння Π·ΠΌΡ–Π½ Ρƒ Π³Ρ–Π»Ρ†Ρ–

Опинившись Ρƒ ΠΏΠΎΡ‚Ρ€Ρ–Π±Π½Ρ–ΠΉ Π³Ρ–Π»Ρ†Ρ–, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ вносити Π·ΠΌΡ–Π½ΠΈ Π΄ΠΎ Ρ„Π°ΠΉΠ»Ρ–Π², Π΄ΠΎΠ΄Π°Π²Π°Ρ‚ΠΈ Π½ΠΎΠ²Ρ– Ρ„Π°ΠΉΠ»ΠΈ Ρ– фіксувати Π·ΠΌΡ–Π½ΠΈ. Наприклад

  1. Π Π΅Π΄Π°Π³ΡƒΠ²Π°Ρ‚ΠΈ Ρ„Π°ΠΉΠ»ΠΈ Π°Π±ΠΎ ΡΡ‚Π²ΠΎΡ€ΡŽΠ²Π°Ρ‚ΠΈ Π½ΠΎΠ²Ρ–.
  2. ΠŸΠΎΠ΅Ρ‚Π°ΠΏΠ½Π΅ внСсСння Π·ΠΌΡ–Π½
    git add
  3. ЗафіксуйтС Π·ΠΌΡ–Π½ΠΈ
    git commit -m "Description of changes"

6. Об’єднання Π³Ρ–Π»ΠΎΠΊ

ΠŸΡ–ΡΠ»Ρ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ Π½Π°Π΄ Π³Ρ–Π»ΠΊΠΎΡŽ, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±’Ρ”Π΄Π½Π°Ρ‚ΠΈ Ρ—Ρ— Π· Ρ–Π½ΡˆΠΎΡŽ Π³Ρ–Π»ΠΊΠΎΡŽ (Π·Π°Π·Π²ΠΈΡ‡Π°ΠΉ main Π°Π±ΠΎ develop). Π‘ΠΏΠΎΡ‡Π°Ρ‚ΠΊΡƒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ–Ρ‚ΡŒ Π΄ΠΎ Π³Ρ–Π»ΠΊΠΈ, яку Π²ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚Π΅ ΠΎΠ±’Ρ”Π΄Π½Π°Ρ‚ΠΈ

git checkout main

ΠŸΠΎΡ‚Ρ–ΠΌ скористайтСся Π½Π°ΡΡ‚ΡƒΠΏΠ½ΠΎΡŽ командою, Ρ‰ΠΎΠ± ΠΎΠ±’Ρ”Π΄Π½Π°Ρ‚ΠΈ Π³Ρ–Π»ΠΊΡƒ Ρ„ΡƒΠ½ΠΊΡ†Ρ–ΠΎΠ½Π°Π»ΡŒΠ½ΠΈΡ… моТливостСй

git merge branch_name

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄

git merge feature/new-feature

7. Π’ΠΈΡ€Ρ–ΡˆΠ΅Π½Π½Ρ ΠΊΠΎΠ½Ρ„Π»Ρ–ΠΊΡ‚Ρ–Π² злиття

Π―ΠΊΡ‰ΠΎ Π·ΠΌΡ–Π½ΠΈ Π² ΠΎΠ±ΠΎΡ… Π³Ρ–Π»ΠΊΠ°Ρ… ΠΊΠΎΠ½Ρ„Π»Ρ–ΠΊΡ‚ΡƒΡŽΡ‚ΡŒ, Git ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΠΊΠΎΠ½Ρ„Π»Ρ–ΠΊΡ‚ злиття. Π’Π°ΠΌ ΠΏΠΎΡ‚Ρ€Ρ–Π±Π½ΠΎ Π±ΡƒΠ΄Π΅ Π²ΠΈΡ€Ρ–ΡˆΠΈΡ‚ΠΈ ΠΉΠΎΠ³ΠΎ Π²Ρ€ΡƒΡ‡Π½Ρƒ

  1. Π’Ρ–Π΄ΠΊΡ€ΠΈΠΉΡ‚Π΅ ΠΊΠΎΠ½Ρ„Π»Ρ–ΠΊΡ‚ΡƒΡŽΡ‡Ρ– Ρ„Π°ΠΉΠ»ΠΈ Ρƒ тСкстовому Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ–. Git ΠΏΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»Ρ–ΠΊΡ‚Π½Ρ– сСкції.
  2. Π’Ρ–Π΄Ρ€Π΅Π΄Π°Π³ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ», Ρ‰ΠΎΠ± Π²ΠΈΡ€Ρ–ΡˆΠΈΡ‚ΠΈ ΠΊΠΎΠ½Ρ„Π»Ρ–ΠΊΡ‚, Ρ– Π·Π±Π΅Ρ€Π΅ΠΆΡ–Ρ‚ΡŒ ΠΉΠΎΠ³ΠΎ.
  3. Π—ΠΌΠΎΠ½Ρ‚ΡƒΠΉΡ‚Π΅ Π²ΠΈΠΏΡ€Π°Π²Π»Π΅Π½Ρ– Ρ„Π°ΠΉΠ»ΠΈ
    git add filename
  4. Π—Π°Π²Π΅Ρ€ΡˆΡ–Ρ‚ΡŒ злиття ΡˆΠ»ΡΡ…ΠΎΠΌ фіксації
    git commit -m "Resolved merge conflict"

8. ВидалСння Π³Ρ–Π»ΠΊΠΈ

Π―ΠΊΡ‰ΠΎ Π²ΠΈ ΠΎΠ±’Ρ”Π΄Π½Π°Π»ΠΈ Π³Ρ–Π»ΠΊΡƒ Ρ– Π²ΠΎΠ½Π° Π²Π°ΠΌ Π±Ρ–Π»ΡŒΡˆΠ΅ Π½Π΅ ΠΏΠΎΡ‚Ρ€Ρ–Π±Π½Π°, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π°Π»ΠΈΡ‚ΠΈ Ρ—Ρ—

git branch -d branch_name

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄

git branch -d feature/new-feature

9. ΠŸΠ΅Ρ€Π΅Π³Π»ΡΠ΄ історії Π³Ρ–Π»ΠΊΠΈ

Π©ΠΎΠ± пСрСглянути Ρ–ΡΡ‚ΠΎΡ€Ρ–ΡŽ ΠΊΠΎΠΌΠΌΡ–Ρ‚Ρ–Π² Ρƒ Π²Π°ΡˆΠΎΠΌΡƒ сховищі, Π·ΠΎΠΊΡ€Π΅ΠΌΠ°, які Π³Ρ–Π»ΠΊΠΈ ΠΌΡ–ΡΡ‚ΡΡ‚ΡŒ які ΠΊΠΎΠΌΠΌΡ–Ρ‚ΠΈ, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ скористатися

git log --oneline --graph --decorate --all

Ця ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π°Π΄Π°Ρ” Π²Ρ–Π·ΡƒΠ°Π»ΡŒΠ½Π΅ прСдставлСння структури Π³Ρ–Π»ΠΎΠΊ Ρ‚Π° історії ΠΊΠΎΠΌΠΌΡ–Ρ‚Ρ–Π²

10. Найкращі ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ для управління Π³Ρ–Π»ΠΊΠ°ΠΌΠΈ

  • ВикористовуйтС описові Π½Π°Π·Π²ΠΈ: НазивайтС Π³Ρ–Π»ΠΊΠΈ Ρ‡Ρ–Ρ‚ΠΊΠΎ, Ρ‰ΠΎΠ± Π²Ρ–Π΄ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΠΈ Ρ—Ρ… призначСння (Π½Π°ΠΏΡ€ΠΈΠΊΠ»Π°Π΄, feature/login-page, bugfix/issue-42).
  • РСгулярно ΠΎΠ±’Ρ”Π΄Π½ΡƒΠΉΡ‚Π΅ Ρ‚Π° видаляйтС Π³Ρ–Π»ΠΊΠΈ: Π’Ρ€ΠΈΠΌΠ°ΠΉΡ‚Π΅ сховищС Π² чистоті, часто ΠΎΠ±’Ρ”Π΄Π½ΡƒΡŽΡ‡ΠΈ Π³Ρ–Π»ΠΊΠΈ Ρ– Π²ΠΈΠ΄Π°Π»ΡΡŽΡ‡ΠΈ Ρ‚Ρ–, які Π±Ρ–Π»ΡŒΡˆΠ΅ Π½Π΅ ΠΏΠΎΡ‚Ρ€Ρ–Π±Π½Ρ–.
  • Π£Π½ΠΈΠΊΠ°ΠΉΡ‚Π΅ Π΄ΠΎΠ²Π³ΠΎΠΆΠΈΠ²ΡƒΡ‡ΠΈΡ… Π³Ρ–Π»ΠΎΠΊ: Π—ΠΌΠ΅Π½ΡˆΡƒΠΉΡ‚Π΅ Ρ‚Ρ€ΠΈΠ²Π°Π»Ρ–ΡΡ‚ΡŒ Тиття Π³Ρ–Π»ΠΎΠΊ, Ρ‰ΠΎΠ± Π·ΠΌΠ΅Π½ΡˆΠΈΡ‚ΠΈ ΠΉΠΌΠΎΠ²Ρ–Ρ€Π½Ρ–ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»Ρ–ΠΊΡ‚Ρ–Π² ΠΏΡ€ΠΈ Π·Π»ΠΈΡ‚Ρ‚Ρ–.

Висновок: ΠžΠΏΡ‚ΠΈΠΌΡ–Π·ΡƒΠΉΡ‚Π΅ розгалуТСння Git’Π° Π·Π° допомогою AlexHost

РозгалуТСння Git’Π° Π΄Π°Ρ” Π²Π°ΠΌ ΠΌΠΎΠΆΠ»ΠΈΠ²Ρ–ΡΡ‚ΡŒ Π±Π΅Π·ΠΏΠ΅Ρ‡Π½ΠΎ розробляти Ρ„ΡƒΠ½ΠΊΡ†Ρ–Ρ— Ρ‚Π° виправлСння, Π° VPS Π½Π° Π±Π°Π·Ρ– NVMe Π²Ρ–Π΄ AlexHost Π·Π°Π±Π΅Π·ΠΏΠ΅Ρ‡ΡƒΡ” ΡˆΠ²ΠΈΠ΄ΠΊΡ– Ρ‚Π° Π±Π΅Π·ΠΏΠ΅Ρ‡Π½Ρ– Ρ€ΠΎΠ±ΠΎΡ‡Ρ– процСси. Π‘Ρ‚Π²ΠΎΡ€ΡŽΠΉΡ‚Π΅ Π³Ρ–Π»ΠΊΠΈ (git checkout -b), Π²ΠΏΠ΅Π²Π½Π΅Π½ΠΎ Π·Π»ΠΈΠ²Π°ΠΉΡ‚Π΅ (git merge) Ρ‚Π° ΠΎΡ‡ΠΈΡ‰Π°ΠΉΡ‚Π΅ (git branch -d). ВикористовуйтС описові Ρ–ΠΌΠ΅Π½Π°, Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½Π΅ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ Ρ– використовуйтС root-доступ AlexHost для ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΈΡ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€Ρ–Ρ—Π² Π°Π±ΠΎ CI/CD. Π—Π±Π΅Ρ€Ρ–Π³Π°ΠΉΡ‚Π΅ свій ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΎΡ€Π³Π°Π½Ρ–Π·ΠΎΠ²Π°Π½ΠΈΠΌ, Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡŽ – AlexHost Π΄ΠΎΠΏΠΎΠΌΠΎΠΆΠ΅ Π²Π°ΠΌ Π· Git’ΠΎΠΌ!

15%

Π—Π°ΠΎΡ‰Π°Π΄ΠΆΡƒΠΉΡ‚Π΅ 15% Π½Π° всіх послугах хостингу

ΠŸΠ΅Ρ€Π΅Π²Ρ–Ρ€Ρ‚Π΅ свої Π½Π°Π²ΠΈΡ‡ΠΊΠΈ Ρ‚Π° ΠΎΡ‚Ρ€ΠΈΠΌΠ°ΠΉΡ‚Π΅ Π—Π½ΠΈΠΆΠΊΡƒ Π½Π° Π±ΡƒΠ΄ΡŒ-який Ρ‚Π°Ρ€ΠΈΡ„Π½ΠΈΠΉ ΠΏΠ»Π°Π½

Використовуй ΠΊΠΎΠ΄:

Skills
ΠŸΠΎΡ‡Π°Ρ‚ΠΈ