Skip to content

Все для WordPress, веб-розробки — і не тільки

🚀 Git для початківців: перша інструкція з роботи з GitHub

🚀 Git для початківців: перша інструкція з роботи з GitHub

Ви написали код, але боїтеся зламати робочу версію. Або працюєте в команді й губитеся, хто і коли вніс правки. А може, просто хочете «відкотити» невдалий експеримент однією командою.

Усе це закриває Git, система контролю версій, без якої не обходиться жоден сучасний проєкт. Але поріг входу багатьох відлякує: термінал, SSH-ключі, гілки, pull request'и.

Насправді базовий робочий цикл опановується за годину. Ця інструкція, саме про нього: від встановлення до першого push'у, без води та зайвої теорії.

💡 Швидкий огляд:

  • Встановіть Git під вашу ОС і задайте ім'я користувача однією командою
  • Згенеруйте SSH-ключ Ed25519 і прив'яжіть його до акаунта на GitHub
  • Створіть репозиторій, зв'яжіть із локальною папкою та виконайте перший push
  • Клонуйте наявний репозиторій через HTTPS або SSH для локальної роботи
  • Опануйте сучасні команди git switch і git restore замість git checkout

1. Встановлення Git

Git працює на Windows, macOS і Linux. Найнадійніший спосіб, завантажити інсталятор з офіційного сайту git-scm.com.

Для Windows завантажуйте 64-бітну версію. Під час встановлення майстер запропонує вибрати редактор за замовчуванням, стратегію обробки закінчень рядків і термінал, для новачка підходять значення за замовчуванням, окрім редактора: замість Vim зручніше взяти Nano або VS Code.

Детальна інструкція зі встановлення Git на Windows (зі скриншотами кожного кроку майстра) вже є в нашому блозі: як встановити Git у Windows.

Перевірте, що Git став коректно:

1git --version

Якщо термінал показав версію (наприклад, git version 2.48.0), встановлення пройшло успішно.

2. Первинне налаштування Git

До першого коміту Git потрібно представитися. Ім'я та email потраплять в історію кожної зміни, за ними колеги зрозуміють, хто автор правки.

1git config --global user.name "Ваше Имя"
2git config --global user.email "[email protected]"

Прапорець --global записує налаштування глобально, вони підхопляться для всіх репозиторіїв на машині. Якщо для конкретного проєкту потрібні інші дані, повторіть команду без --global, перебуваючи в папці проєкту.

Ще два корисні прапорці:

1git config --global core.editor "code --wait" # редактор для сообщений коммитов
2git config --global init.defaultBranch main # ветка по умолчанию — main, не master

З 2020 року GitHub створює репозиторії з гілкою main замість master. Рядок init.defaultBranch main синхронізує ваше локальне встановлення з цим стандартом, позбавить плутанини в майбутньому.

Перевірте все разом:

1git config --list

3. SSH-ключ і прив’язка до GitHub

GitHub вимкнув підтримку паролів для Git-операцій у 2021 році. Сьогодні стандарт — це SSH-ключі, а алгоритм, Ed25519 (компактніший і безпечніший за застарілий RSA).

Згенеруйте ключ:

1ssh-keygen -t ed25519 -C "[email protected]"

Натисніть Enter тричі: порожня парольна фраза, цілком прийнятно для локальної розробки. Термінал покаже відбиток і шлях до ключа:

Вивід команди ssh-keygen з ключем Ed25519 у терміналі

Тепер скопіюйте публічний ключ до буфера обміну. Команда залежить від ОС:

macOS:

1pbcopy < ~/.ssh/id_ed25519.pub

Linux (Ubuntu):

1cat ~/.ssh/id_ed25519.pub

Windows (Git Bash):

1clip < ~/.ssh/id_ed25519.pub

Залишилося додати ключ на GitHub. Зайдіть в акаунт, клацніть по аватарці у правому верхньому куті та виберіть Settings:

Меню налаштувань облікового запису GitHub із пунктом Settings

У бічному меню перейдіть на вкладку SSH and GPG keys:

Сторінка керування ключами SSH і GPG у налаштуваннях GitHub

Натисніть зелену кнопку New SSH Key. У полі Title дайте ключу осмислену назву (наприклад, «Ноутбук Asus»), у полі Key вставте вміст буфера обміну та натисніть Add SSH Key.

Перевірте з’єднання:

Відповідь Hi username! You've successfully authenticated... означає, що все налаштовано.

4. Створення репозиторію та перша синхронізація

На github.com/new створіть новий репозиторій: задайте ім’я, залиште Public або оберіть Private, НЕ ставте галочку «Add a README file» (інакше буде конфлікт при першому push’і).

Тепер у терміналі перейдіть до теки проєкту та виконайте ланцюжок:

1git init # инициализация Git в папке
2git add . # индексация всех файлов
3git commit -m "Первый коммит" # фиксация состояния

Зв’яжіть локальну теку з віддаленим репозиторієм і надішліть зміни:

1git remote add origin [email protected]:yourname/yourproject.git
2git push -u origin main

Прапорець -u запам’ятовує зв’язку «локальна гілка → віддалена». Наступного разу вистачить простого git push.

Не забудьте про .gitignore, до нього заносять файли, які не повинні потрапити до репозиторію (логи, тимчасові файли IDE, теки залежностей на кшталт node_modules/). Готові шаблони для будь-якого стеку беріть на gitignore.io.

5. Клонування репозиторію

Клонування — це завантаження чужого (або свого, але з GitHub) репозиторію на локальну машину з повною історією змін.

На сторінці репозиторію натисніть зелену кнопку Code:

Кнопка Code для клонування репозиторію на GitHub

Відкриється вікно з трьома варіантами. Оберіть SSH (якщо налаштували ключ за кроком 3) або HTTPS:

Вікно клонування з вкладками HTTPS і SSH на GitHub

Скопіюйте URL і виконайте в терміналі:

1git clone [email protected]:username/repository.git

Git створить теку з іменем репозиторію та завантажить туди всі файли плюс історію. Після клонування ви одразу можете починати роботу.

Для щоденної навігації гілками використовуйте сучасні команди:

1git switch feature-branch # переключиться на существующую ветку
2git switch -c new-feature # создать новую ветку и переключиться
3git restore file.txt # откатить изменения в файле

Вони прийшли на зміну перевантаженому git checkout у Git 2.23 і відтоді стали стандартом. git checkout нікуди не зник, але switch і restore безпечніші та інтуїтивніші.

Якщо віддаєте перевагу графічному інтерфейсу, GitHub Desktop надає візуальне керування клонуванням, комітами та гілками без термінала.

Відео: повний курс Git і GitHub за 2 години

Для закріплення матеріалу перегляньте вичерпний відеоурок англійською, від встановлення до просунутих сценаріїв командної роботи:

⁉️🤔 Часті запитання

Чим Git відрізняється від GitHub?

Git — це програма для контролю версій, яка працює на вашому комп’ютері. GitHub — це вебсервіс, що зберігає Git-репозиторії у хмарі та додає інструменти для спільної роботи: pull request’и, code review, issues. Аналоги, GitLab і Bitbucket. Git може працювати взагалі без GitHub, але GitHub без Git не існує.

Чи потрібно вчити командний рядок, якщо є GitHub Desktop?

GitHub Desktop закриває більшість повсякденних задач, але термінал дає повний контроль. Команди на кшталт git rebase, git stash і git cherry-pick у GUI не завжди очевидні. CI/CD, сервери та DevOps-сценарії працюють лише через CLI. Наша порада: почніть із Desktop, а командний рядок опановуйте паралельно, по 2-3 команди за раз.

Чи можна перейменувати гілку master на main у наявному проєкті?

Так, і це стандартна практика. Виконайте: git branch -m master main, потім git push -u origin main і git push origin --delete master. Після цього в налаштуваннях репозиторію на GitHub змініть гілку за замовчуванням на main.

Що робити, якщо Git відхиляє push із помилкою «failed to push some refs»?

Майже завжди причина в тому, що у віддаленому репозиторії є коміти, яких немає у вас локально. Спочатку зробіть git pull --rebase origin main, розв’яжіть конфлікти, якщо вони є, потім повторіть git push. Прапорець --rebase ставить ваші коміти поверх віддалених, історія залишається лінійною.

Як скасувати останній коміт, який ще не пішов на GitHub?

git reset --soft HEAD~1, коміт зникне, але зміни залишаться в індексі (staged). Можна виправити й перекомітити. Якщо зміни взагалі не потрібні, застосуйте git reset --hard HEAD~1, але будьте обережні: жорсткий reset скидає файли безповоротно.

Що далі: ваш перший робочий цикл

Підсумкова картина після цієї інструкції: Git встановлено, SSH-ключ прив’язано, репозиторій створено та синхронізовано. Ви пройшли шлях від нуля до готового до роботи середовища.

Далі, практика. Почніть із малого: зробіть три осмислені коміти в тестовий проєкт, відкрийте гілку через git switch -c, додайте файл і надішліть pull request на злиття в main. Саме цей цикл (commit → branch → PR → merge) повторюється щодня в будь-якій команді.

А коли освоїтеся, повертайтеся до нас за просунутими темами: git rebase, інтерактивний stash, розв’язання конфліктів злиття та налаштування CI/CD на GitHub Actions.